C# 操作筛选器属性不存在';跑不动

C# 操作筛选器属性不存在';跑不动,c#,asp.net-core,C#,Asp.net Core,我有这个过滤器,我正试图运行 public class ModelValidationAttribute : ActionFilterAttribute { public override void OnActionExecuting(ActionExecutingContext context) { context.Result = new NotFoundResult(); } } 我已经像这样把它放在了我的邮局管理员上面 [HttpPost] [R

我有这个过滤器,我正试图运行

public class ModelValidationAttribute : ActionFilterAttribute
{
    public override void OnActionExecuting(ActionExecutingContext context)
    {
        context.Result = new NotFoundResult();
    }
}
我已经像这样把它放在了我的邮局管理员上面

[HttpPost]
[Route("Save")]
[ModelValidation]
public ActionResult Save(CreateUserDto Input)
{
    CreateUserViewModel cuvm = new CreateUserViewModel
    {
        Id = Input.Id,
        UserName = Input.UserName,
        Email = Input.Email,
        FirstName = Input.FirstName,
        LastName = Input.LastName,
        DateOfBirth = Input.DateOfBirth,
        PhoneNumber = Input.PhoneNumber,
        Password = Input.Password,
        ConfirmPassword = Input.ConfirmPassword,
        RoleList = Input.RoleList,
        CreatedOn = Input.CreatedOn,
        UpdatedOn = Input.UpdatedOn
    };
    //if (!ModelState.IsValid)
    //{
    //    return BadRequest(Input);
    //}
    var result = applicationUsersData.Save(cuvm);
    if (Input.RoleList != null)
    {
        var RoleList = JsonConvert.DeserializeObject<List<UserAddRoleDetailsViewModel>>(Input.RoleList);
        foreach (var item in RoleList)
        {
            var uardvm = new SaveUserRolesDetailsViewModel
            {
                RoleId = item.Id,
                Id = result.Id
            };
            userRolesData.Save(uardvm);
        }
    }
    return Ok();
}

确保实现
System.Web.Mvc.ActionFilterAttribute
而不是
System.Web.Http.Filters.ActionFilterAttribute
System.Web
=>ASP.NET框架,而不是ASP.NET核心。我使用的是Microsoft.AspNetCore.Mvc.Filters;你看过davidfoll的文档了吗?是的,我看过。这就是我使用此筛选器属性的原因。您是否尝试运行筛选器示例并将其与应用程序进行比较?是的,我刚刚尝试过。在操作筛选器之前运行401 unauthorized属性,而不是my not found ErrorAuthorization属性。如果您的控制器上有一个authorize属性,它将在您的操作筛选器之前运行。
services.AddAuthorization(options =>
{
    options.AddPolicy(RoleGlobals.SystemAdministrator, policy => policy.Requirements.Add(new RolesFilter(RoleGlobals.SystemAdministrator, ApplicationGlobals.ApplicationName)));
});
services.AddMvc(options => {
    options.Filters.Add(new ModelValidationAttribute());
});