将控制器参数传递给视图
将控制器参数传递给视图的最佳方法是什么?该参数与任何模型无关,因此无法进行强类型视图。
控制器:
public ActionResult DisplayParam(string id, string name)
{
return View();
}
查看:
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %>
<%@ Import NameSpace="System.IO" %> <%@导入NameSpace=“系统”%> <%@ Import NameSpace="System.Data" %> <%@ 导入 NameSpace="System.Web" %> <%@ 导入 NameSpace="System.Text" %> <%@ 导入命名空间="MY.Controllers" %>
控制器参数
<div>
Controller Parameter id: @id
Controller Parameter name: @name
</div>
What is the best way to passing a controller parameter to a view? The parameter is not related to any model, so cant do strongly typed view.
Controller:
public ActionResult DisplayParam(string id, string name)
{
return View();
}
View:
<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %>
<%@ Import NameSpace="System.IO" %>
<%@ Import NameSpace="System" %>
<%@ Import NameSpace="System.Data" %>
<%@ Import NameSpace="System.Web" %>
<%@ Import NameSpace="System.Text" %>
<%@ Import Namespace="MY.Controllers" %>
Controller Parameter
<div>
Controller Parameter id: @id
Controller Parameter name: @name
</div>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
最好的方法是使用视图模型:
然后让控制器操作填充此视图模型并将其传递给视图,就像这样:
最后,您将视图强类型化到此视图模型并使用信息来显示它:
或者如果您使用的是 Razor 视图引擎:
The best way is to use a view model:
and then have your controller action populate this view model and pass it to the view, just like this:
and finally you would have your view strongly typed to this view model and use the information to display it:
or if you were using the Razor view engine: