可以说,更优雅的解决方案至少要求使用强类型视图(使用模型 - MVC中的M)。一个简单的例子可以是:
模型:
public class MessageViewModel
{
public string Message {get; set;}
}
控制器:
public ActionResult Index()
{
var viewModel = new MessageViewModel {Message = "Hello from far away"};
return View(viewModel);
}
的视图:
@model MyNamespace.MessageViewModel
<h2>@Html.DisplayFor(model => model.Message)</h2>
会予与该上费心为单个消息页面?令人惊讶的是,大部分时间我都会。有一些关于视图的东西非常优雅,确切地知道期望的内容(反之亦然),Intellisense支持以及可以在其中执行各种隐式格式化的方法HtmlHelper
的DisplayFor()
方法。
话虽这么说,在“简单”(阅读:快速和肮脏的,但得到快速丑)解决方案,将是你的东西邮件到ViewBag
动态对象。
在控制器:
ViewBag.MyMessage = "Hello from a far away place";
在视图:
@ViewBag.MyMessage
但这样一来,你输了智能感知,可重复性(干),可能你的理智。在一个地方使用一个属性,也许(a laViewBag.Title
即默认的_Layout页面使用)。一大堆断开的东西塞进包里,不用谢了。
有很多方法,包括ViewBags和ViewData,但令人震惊的是,你也可以使用模型。请做好自己的尝试。这个问题可以很容易回答 – 2013-02-18 17:21:43