asp.net-mvc – 我可以使用MVC全局动作过滤器来禁用表单字段吗?
发布时间:2020-12-16 09:33:54 所属栏目:asp.Net 来源:网络整理
导读:我们的应用程序的一些用户将拥有对我们许多页面的只读访问权限,在我们当前的Web表单应用程序中,这意味着他们会看到表单,但所有字段都被禁用.我们正在研究MVC 3并寻找实现此功能的最干净,最惯用的方式. 到目前为止一些想法: 全局操作过滤器和编辑模板的某种
我们的应用程序的一些用户将拥有对我们许多页面的只读访问权限,在我们当前的Web表单应用程序中,这意味着他们会看到表单,但所有字段都被禁用.我们正在研究MVC 3并寻找实现此功能的最干净,最惯用的方式.
到目前为止一些想法: >全局操作过滤器和编辑模板的某种组合. 我倾向于排名第一,但我想知道是否有更多MVC经验的人/ gals以更好的方式解决了这个问题. 解决方法
我同意使用基本视图模型,或者可能只是具有“CanEdit”类型属性的接口.如果你去接口路由,你可以在OnActionExecuted方法的ActionFilter中设置属性.
要将它绑定到视图,创建一个新的HtmlHelper将非常??简单.我使用TextBoxFor作为基类,因为它可以访问视图的模型.然后,您可以检查该属性并创建必要的HTML属性.但是,通过这条路线,您需要为您需要的每种输入控件创建一个新的帮助器(文本框,选择列表等). 在不知道您正在做什么的所有细节的情况下,更简单的想法是不为只读用户提供“保存”按钮. “保存”按钮将由视图模型中的一个属性(或ViewData,如果您愿意)驱动. 其他几个人提到仍然需要服务器端限制来阻止人们绕过客户端限制.您需要一个动作过滤器. This link对此有一个好主意. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-core – 为什么要在ASP.NET Core中使用完整的.NET
- asp.net-mvc – Web API和AngularJS SPA应用程序的身份验证
- asp.net-mvc – 我的表单应该在我的编辑器模板内部还是外部
- asp.net-mvc – NHibernate:我如何XmlSerialize一个ISet?
- asp.net – AntiForgeryToken是否需要会话状态?
- EFCore 5 新特性 SaveChangesInterceptor
- asp.net c#中的最佳Audit Trail流程?
- ASP.NET C#列出哪些以及何时?
- asp.net-core – 如何在IServiceCollection.Configure()中使
- 如何在调用WCF服务之前弹出一个确认对话框?
推荐文章
站长推荐
热点阅读