asp.net-mvc – ASP.NET MVC:通过所有ActionLinks传播查询参数
发布时间:2020-12-16 00:07:13 所属栏目:asp.Net 来源:网络整理
导读:在我的应用程序中,密钥查询字符串参数可用于授予对某些操作/视图的访问权限. 现在我希望所有ActionLinks和Forms自动包含此参数(如果存在于当前查询字符串中). 这样做的正确方法是什么? 我问的是正确的方法,因为我看到了几种建议以某种方式改变视图的解决方
在我的应用程序中,密钥查询字符串参数可用于授予对某些操作/视图的访问权限.
现在我希望所有ActionLinks和Forms自动包含此参数(如果存在于当前查询字符串中). 这样做的正确方法是什么? 我问的是正确的方法,因为我看到了几种建议以某种方式改变视图的解决方案(替代扩展方法/帮助器,手动参数传递).这不是我要找的解决方案. 更新: 解决方法
你可以用路线做,但你需要更多的基础设施.像这样的东西
public class RouteWithKey:Route { //stuff omitted public override VirtualPathData GetVirtualPath(RequestContext requestContext,RouteValueDictionary values) { values.Add("key",requestContext.HttpContext.Request.QueryString["key"]); var t = base.GetVirtualPath(requestContext,values); return t; } } 当然你需要从请求参数中检索密钥并处理密钥是查询中第二个参数的情况,但是这个apporach会自动添加通过普通as.net mvc帮助器构建的每个utel的密钥. 我碰巧为应用程序使用自定义路由,出于不同的目的,但我已经使用上面的代码测试并添加了参数,所以至少在我的项目中似乎工作正常. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – Asp.net MVC 3路由区域失败
- asp.net – 使用SignalR编译项目时,我必须做一个iisreset
- asp.net – ASP核心:如何设置httpContext.User?
- 过期输出缓存ASP.Net MVC
- asp.net – 如何通过门户中的注销按钮从所有打开的Web应用程
- asp.net – 将JSON数据解析为.NET对象的最佳方式
- ASP.NET MVC 5中的Actionfilter注入
- asp.net – 使用CompareValidator控件将用户输入日期与今天
- asp.net-mvc – ASP.net MVC3 – 使用Ajax回发的Razor View
- 如何创建ASP.NET RecaptchaControl自定义模板
推荐文章
站长推荐
热点阅读