我一直在寻找如何从MVC应用程序的视图访问强类型数据的好解释(第一次接触MVC),但似乎找不到
PersonDetailsModel personDetails = personProvider.GetPersonDetails(id);
return View("Person", personDetails);
我有一个名为Person.aspx的视图,它看起来像这样(几乎是空的):
<%@ Page Title="Title" Language="C#" Inherits="System.Web.Mvc.ViewPage<Models.PersonDetailsModel>" MasterPageFile="../MvcMasterPage.Master" %>
我本以为我可以在视图中做一些类似Model.properties或Person.properties的事情来访问数据,但我不知道如何访问我的模型实例。我相信这很容易,但我就是看不出来。
由于您有一个强类型视图,Model
是您从控制器传递的模型的实例。所以你可以直接访问它的属性:
<%@ Page
Title="Title"
Language="C#"
Inherits="System.Web.Mvc.ViewPage<Models.PersonDetailsModel>"
MasterPageFile="../MvcMasterPage.Master"
%>
<div><%: Model.SomeProperty %></div>
Model
属性的类型将为Models.PersonDetailsModel
。
如果你使用Razor视图引擎,等效的视图会是这样的:
@model Models.PersonDetailsModel
<div>@Model.SomeProperty</div>