我想将div的id传递给控制器。我已经附加了一个动作链接到div,我正在尝试做类似下面的事情,
我的TasksController的索引视图
@Html.ActionLink("c", "Create", "TasksController", new { i = 6 }, new { @class = "element" })
在Create controller
中public ActionResult Create(string i)
{
ViewData["I"] = i;
return View();
}
然后在“创建视图”中
<div class="editor-field">
@Html.TextBox("divID", ViewData["I"])
@Html.ValidationMessageFor(model => model.divID)
</div>
但这不起作用。 有什么帮助吗?提前致谢。
答案 0 :(得分:1)
试试这个:
@Html.ActionLink("c", "Create", "Tasks", new { i = "6" }, new { @class = "element" })
您也可以通过配置路由来解决此问题:
global.asax中:
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = "" } // Parameter defaults
);
The Actionlink:
Html.ActionLink(article.Title,
"Item", // <-- ActionMethod
"Login", // <-- Controller Name.
new { "6"}, // <-- Route arguments.
null // <-- htmlArguments .. which are none. You need this value
// otherwise you call the WRONG method ...
// (refer to comments, below).
)
链接将如下所示:
<a href="/Item/Login/6">Title</a>
请考虑控制器名称是&#34;任务&#34;不是&#34;任务控制器&#34;。
修改强> 要重定向到另一个视图并传递一些数据,您必须使用&#34; RedirectToAction&#34;在控制器中:
return RedirectToAction("Tests", new {
ID = "6",
});
修改强>
你必须写&#34; 6&#34; ,只需任务希望这会有效!