c# - 如何将当前参数传递给 MVC5 C# 中的 Url.Action?
问题描述
如何将当前参数传递给 MVC5 C# 中的 Url.Action?
视图模型:
IndexViewModel
->SubViewModel
->Option1
参数为 routeValues 中的 SubViewModel.Option1。
看法:
Url.Action("Index", this.ViewContext.RouteData.Values)
即使存在路由值,这也不会返回任何路由。
解决方案
我通过使用这个扩展找到了解决方案:
public static class NvcExtension
{
public static IDictionary<string, object> ToDictionary(this NameValueCollection col)
{
IDictionary<string, object> dict = new Dictionary<string, object>();
foreach (var k in col.AllKeys)
{
dict.Add(k, col.GetValues(k).FirstOrDefault());
}
return dict;
}
}
看法:
Url.Action("Index", new RouteValueDictionary(this.Request.QueryString.ToDictionary()))
推荐阅读
- r - 用于配对 Wilcoxon 检验的带有 p 值的动画小提琴/箱线图
- flutter - 在 SingleChildScrollView 内垂直居中小部件
- c# - 多态代码优先模型和查询
- r - 忽略 Inf 值并运行 lm 回归
- javascript - 输入字段,使用 jQuery 自动完成,输入时有时会失去焦点(仅在 IE 11 上发生)
- python - PyQt:将用户输入添加到列表中
- twitter - Twitter javascript文件的非缩小版?(例如widgets.js)
- sass - Jekyll 不刷新对自定义 CSS 子目录的更改
- nonlinear-optimization - Pyomo 的 SCIP 可执行文件
- r - R:确定 nls 的系数