如何在MVC中访问强类型数据

时间:2012-01-11 16:35:52

标签: asp.net-mvc asp.net-mvc-3 model-view-controller

我一直在寻找如何从我的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.property或Person.property的操作来访问数据,但我看不出如何访问模型的实例。我确信这很容易,但我只是看不到它。

1 个答案:

答案 0 :(得分:4)

由于您有一个强类型视图,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>