我正在使用 Razor 引擎制作 ASP.NET MVC 应用程序。
我想知道是否可以在视图中使用Regions。
类似:
#region blabla
<p>@Model.Name</p>
<p>...</p>
#endregion
这是行不通的。有替代方案吗?
这适用于 Visual Studio 2015 及更高版本 (感谢
@dotnetN00b
在评论部分提供示例):
<!-- #region Test -->
code here
<!-- #endregion -->
选择需要转换为区域的部分,然后右键单击并按 CollapseTag
在 Visual Studio(2015 及更高版本).html 或 .cshtml 代码编辑器中,键入
region
,然后按 Tab
键。这实现了 #region
片段代码,如下所示:
<!-- #region name -->
//Your html or cshtml codes
<!-- #endregion -->.
在 Visual Studio 中,您可以手动添加轮廓区域,如下所示:
创建或删除可折叠区域
选择要视为可折叠区域的文本。
要创建可折叠区域,请在“编辑”菜单上指向“大纲”,然后单击“隐藏选择”。
编辑器将所选内容变成一个区域,将其折叠,然后 显示一个带有省略号 (...) 的框以指示该区域 包含塌陷区域。您可以将鼠标指针悬停在该框上 查看其内容。
要删除可折叠区域,请将其折叠,然后单击将其选中。
在“编辑”菜单上,指向“大纲”,然后单击“停止隐藏当前内容”。
折叠和展开单个区域
要折叠区域,请单击编辑器边缘的减号 (-)。
要展开折叠区域,请单击边距中的加号 (+)。
折叠和展开所有区域
在“编辑”菜单上,指向“大纲”,然后单击“切换全部” 提纲。
但这不太实用。
对于 HTML,您可以在文本编辑器选项中手动编辑每个标签的大纲选项:
最小行数最小值为1才有效。
我的上下文菜单中没有“CollapseTag”选项。我通常做的是:
或
使用 Ctrl+M、Ctrl+H
我正在使用 Microsoft Visual Studio Pro 2013。
不,据我所知,不可能在视图中使用区域。您可以使用局部视图将视图区域分组为可重用的局部视图。
参见较新的答案;它有效并达到了预期的效果。
Div 是可折叠的,因此您始终可以将它们与某种 id 一起使用来模拟区域。
<div id="BLABLA">...</div>
您可以使用带有
RenderPartial
或 RenderAction
的母版页来缩小视图。两者都有自己的位置。
区域对我来说在视图中起作用,我可以定义一个区域,但它不会崩溃。如果您使用 @Artur 的使用 Collapse Tag 的方法,那么您几乎就可以了! :)
请注意,使用区域可能会导致视图出现问题 - 尽管它们在语法上是有效的,但代码和 HTML/SCRIPT 之间的指定通常会变得“混乱”,从而导致不可预测的行为。
DIV 无疑是“更好”的解决方案,特别是额外的 DIV 可以在稍后更改 CSS 样式时提供更大的灵活性。
如果您需要很多区域,请考虑进一步重构您的代码。
这对我有用:)
<!-- #region
<p> bla bla <p>
@if(blabla)
{
}
#endregion -->