title: Custom Attribute Named Arguments Not Populated
body: <p>I have made an custom attribute, but I want to be able to pass a named arguments with it.</p>
  
  <p>Here is the attribute below.</p>
  
  <pre><code>[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, AllowMultiple = true)]
  public class AnyAuthorizeAttribute : TypeFilterAttribute
  {
      public string Roles { get; set; }
  
      public AnyAuthorizeAttribute()
          : base(typeof(AnyAuthorizeFilter))
      {
          var roles = !string.IsNullOrEmpty(Roles) ? Roles.Split(", ") : new string[0];
  
          Arguments = new[] { roles };
      }
  }
  
      [HttpGet("roles/{id:int}", Name = "GetRole")]
      [AnyAuthorize(Roles = "Administrator, Super User")]
      public IActionResult Get(int id)
      {
          try
          {
              if (!_unitOfWork.Roles.Exists(id))
              {
                  return BadRequest("No role exists with the id supplied");
              }
  </code></pre>
  
  <p>Everything looks alright to me, but every time I run it, the Roles property is equal to null.
  Any normal parameters I user with the attribute look fine.</p>
  
  <p>I am using this in asp.net core 2.2</p>
  
  <p>What am I missing?</p>