asp.net-mvc – 在模型验证之前获取Filter以执行
发布时间:2020-12-16 06:27:15 所属栏目:asp.Net 来源:网络整理
导读:我有一个过滤器,它将当前线程的CurrentUICulture设置为从cookie中提取的值 我有一个使用FluentValidation库验证的模型 [Validator(typeof(MyInputModelValidator))]public class MyInputModelpublic class MyInputModelValidator: AbstractValidatorMyInputM
我有一个过滤器,它将当前线程的CurrentUICulture设置为从cookie中提取的值
我有一个使用FluentValidation库验证的模型 [Validator(typeof(MyInputModelValidator))] public class MyInputModel public class MyInputModelValidator: AbstractValidator<MyInputModel> { public MyInputModelValidator() { var x = Thread.CurrentThread.CurrentUICulture.Name; RuleFor(o => o.Country).NotEmpty().WithMessage(Resources.NoCountryError); 我希望通过这一点改变线程文化,以便为错误消息提取正确的语言 如果我在上面的验证器上设置了一个断点,我可以看到该线程有错误的文化. 如果我进一步运行代码,它会在过滤器上遇到一个断点,这会改变线程的文化 如何在模型验证开始之前运行过滤器代码 我已尝试使用filter属性修饰控制器操作方法并全局应用它,例如 GlobalConfiguration.Configuration.Filters.Add(new LocalizationApiFilter()); 这是web api,而不是mvc,虽然概念是相同的 有任何想法吗? 解决方法
我认为这是不可能的.模型绑定在动作过滤器在管道中运行之前发生. ASP.NET Web API管道可以扩展但不能修改.您可以通过使用除筛选器之外的其他内容来设置文化,例如消息处理程序,从而解决此问题.授权过滤器也在模型绑定之前运行,但授权过滤器用于授权,可能不适合此. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Asp.Net Identity – 登录后更新声明
- wcf – ASP.NET MVC中的OpenId身份验证是一项宁静的服务吗?
- asp.net-mvc-2 – 如何使用Castle Windsor在MVC中注入UrlHe
- asp.net – jQuery HighCharts和MVC 2应用程序中的简单条形
- razor – ASP.NET Core中当前上下文中不存在名称“model”
- ASP.NET与PHP相比如何?
- 选择ASP.NET而不是PHP需要多少钱?
- asp.net-mvc – 如何更改ASP.NET MVC中的默认验证错误消息?
- Asp.net MVC可见/隐藏
- asp.net – 初学者指南,了解如何在Visual Studio中使用Subv
推荐文章
站长推荐
- 休息 – OData与GraphQL GraphQL比较OData有什么
- 会话对象不更新ASP.NET
- asp.net – 在project.json中排除文件夹
- asp.net – 在构建Web应用程序后使用visual stud
- MVC3&Razor – 将DateTime字符串从“mm / dd
- 如何在ASP.NET中的多个Web应用程序中维护相同的会
- asp.net-mvc – asp.net mvc OnAuthorization和O
- asp.net – DBContext.Entry做什么?
- Asp.Net Core API网关Ocelot
- 实体框架 – 实体框架UnintentionalCodeFirstExc
热点阅读