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



我一直在寻找如何从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>

最新更新