我正在学习ASP.NET MVC,很容易将单个值传递给视图, 使用以下网址格式:
控制器/视图/的 ID
在控制器的代码中,我可以简单地定义整数id参数,如下所示:
ActionResult View(int? id)
{
}
但是,传递一系列值
的接受编程模式(在ASP.NET MVC中)是什么控制器/视图/的 ID1-ID2
以及View方法(在代码隐藏中)会是什么样子?
答案 0 :(得分:0)
<强> /控制器/索引VAR1 = 1&安培; VAR2 = 2及VAR3 = 3 强>
ActionResult Index(int? var1, int? var2, int? var3)
{
Return Content(
String.Format("You entered: {0}, {1}, {2}", var1, var2, var3));
}
结果:
You entered: 1, 2, 3
<强> /控制器/索引值= 1&安培;δ值= 2及值= 3 强>
ActionResult Index(IEnumerable<int> values)
{
Return Content(
String.Format("You entered: {0}, {1}, {2}", values[0], values[1], values[2]));
}
结果:
You entered: 1, 2, 3
我对代码隐藏没有任何经验,抱歉。我很好奇,你为什么要用它?
答案 1 :(得分:0)
首先是
controller/action/some-url-segment
视图只是具有视图结果的动作方法返回的表示逻辑,通常将视图传递给模型。
其次:ASP.NET MVC Views没有代码绑定文件,这不是Web表单。
服务器端的可能路由可以定义如下:
url: "{controller}/{action}/page-{pagenum}"
这会抓住任何网址,例如/admin/getuserlist/page-5
行动方法也会收到那些网址段参数。
ActionResult GetUserList(int pagenum)
以上从路径中定义的URL段获取ActionMethod参数值。
您还可以通过查询字符串传递此类值:
/Admin/getuserlist?page=3&pagesize=45
使用查询字符串传递值时,无需修改路由。
以及url: {controller}/{action}/
很乐意将该请求传递给:
ActionResult GetUserList(int page, int pagesize)