ViewData.Model
我知道Viewdata包含视图通过
返回的数据return view(//data);
但是.Model表示什么?
控制器:
using Testing_linq.Models;
namespace Testing_linq.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
ViewBag.Message = "Welcome to ASP.NET MVC!";
var DataContext = new RegistrationDataContext();
var Registration = DataContext.SelectRegistration_sp();
return View(Registration);
}
查看:
<table>
@foreach(SelectRegistration_spResult reg in (IEnumerable<Object>)ViewData.Model)
{
<tr>
<td>@reg.userEmail </td>
</tr>
}
</table>
我在模型中使用LInq到Sql类。
答案 0 :(得分:4)
模型表示呈现页面所需的任何动态信息,并且是您为视图提供的信息。例如,如果您要创建一个显示某人的名字和姓氏的视图,您可能会想出以下模型:
public sealed class PersonViewModel
{
public string FirstName {get; set; }
public string LastName {get; set; }
}
最好使用强类型视图,因此.cshtml
文件中的第一行是:
@model MyNameSpace.PersonViewModel
当你的控制器返回视图时,你会将需要渲染的内容传递给它:
public ActionResult Index()
{
return View(new PersonViewModel() { FirstName = "Moo", LastName = "Juice" });
}
ViewData.Model
是指传入的PersonViewModel实例,可通过Model
快捷方式在您的视图中访问:
<body>
<p>
Hello @Model.FirstName !!
</p>
</body>