2011-07-21 110 views
8

视觉工作室如何确定哪一个是视图还是局部视图?另一个问题是;有没有办法将我的视图转换为部分视图?剃刀视图和局部视图

回答

21

在Razor中,在WebForms(.aspx和.ascx)中没有视图和部分视图之间的区别。在Razor中,所有视图都是模板。这些模板可以有一个布局:

@{ 
    Layout = "~/Views/Shared/_Layout.cshtml"; 
} 

在这种情况下,它们是视图。如果没有指定布局,则可以将其视为部分视图。布局通常在~/Views/_ViewStart.cshtml文件中定义。

这就是说如果从你的控制器行动你return PartialView();而不是return View();这种布局将不会被应用。

我建议你阅读关于剃刀视图和布局的following blog post

+0

谢谢。很高兴我问。哇,这是一个简单的开关。只是改变了我的控制器,它正在工作。非常感谢。 – frank

+0

@frank,所以如果这篇文章帮助你解决了问题,你可能会考虑[标记为答案](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-工作)通过点击旁边的勾号。 –

+0

只是为了清楚这些搜索和结束在这里,有一个区别,虽然在处理 - viewstart支持,布局支持(如你所说)等http://completedevelopment.blogspot.com/2014/01/is-there -really-no-difference-between.html –

3

Visual Studio不确定哪个是视图,哪个是局部视图。你做。您告诉MVC渲染一个局部视图,并呈现您提供的任何内容。