我工作/调整默认安装asp.net的MVC 4 ..加了一些看法..asp.net的MVC 4:RenderBody()的型号名称写出页面
,当我尝试将模型传递给我的视图,该模型(名称和命名空间)被写出到页面。
@Model Blah.Web.UI.Models.DirectoryModel
@{
ViewBag.Title = "Directory";
Layout = "~/Views/Shared/_Layout.cshtml";
}
时,我认为我的网页,我看到
Blah.Web.UI.Models.DirectoryModel Blah.Web.UI.Models.DirectoryModel
在写两次在页面顶部..
我只是控制器的初始化模式,通过它的视图里面..
我还注意到,这发生在@RenderBody()称为形式_layout ..所以我假设它在我的看法做某处..
即使我注释掉我的观点上的所有代码(接受上述声明)我仍然看到这个字符串写出来。
啊谢谢!这是有道理的..但是,声明仍然有效,因为我仍然能够在以后使用该模型..那么声明可选只是为了知识等? –
'@ model'不仅仅是intelisense:幕后mvc为每个视图创建一类'System.Web.Mvc.WebViewPage'。用'@ model'告诉mvc应该是什么类型参数'T'。如果你不使用'@ model',那么它将使用'System.Web.Mvc.WebViewPage ' –
nemesv