ASP.NET 视图中的区域?

发布于 2024-10-25 04:07:53 字数 300 浏览 1 评论 0 原文

我正在使用 razor 引擎制作 ASP.NET MVC 应用程序。
我想知道是否可以在视图中使用 区域

像这样:

#region blabla
    <p>@Model.Name</p>
    <p>...</p>
#endregion

这不起作用。还有其他选择吗?

I am making an ASP.NET MVC application with the razor engine.
And I was wondering if it's possible to use Regions in a view.

something like:

#region blabla
    <p>@Model.Name</p>
    <p>...</p>
#endregion

This does not work. Is there an alternative?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(11

迷你仙 2024-11-01 04:07:53

这适用于 Visual Studio 2015 及更高版本
(感谢 @dotnetN00b 在评论部分提供示例):

<!-- #region Test -->

code here

<!-- #endregion -->

This works in Visual Studio 2015 and above
(thanks to @dotnetN00b for the sample in the comments section):

<!-- #region Test -->

code here

<!-- #endregion -->
累赘 2024-11-01 04:07:53

选择需要转换为区域的部分,然后右键单击并按 CollapseTag

Select the part which needs to be converted to region, then right click and press CollapseTag

记忆で 2024-11-01 04:07:53

在 Visual Studio(2015 及更高版本).html 或 .cshtml 代码编辑器中,键入 region,然后按 Tab 键。这实现了 #region 代码段代码如下:

<!-- #region name -->

//Your html or cshtml codes

<!-- #endregion -->.

In Visual Studio (2015 and above) .html or .cshtml code editor, type region, then press Tab key.This implements #region snippet code like below:

<!-- #region name -->

//Your html or cshtml codes

<!-- #endregion -->.
亽野灬性zι浪 2024-11-01 04:07:53

在 Visual Studio 中,您可以手动添加轮廓区域,如下所示:

创建或删除可折叠区域

  1. 选择要视为可折叠区域的文本。

  2. 要创建可折叠区域,请在“编辑”菜单上指向“大纲”,然后单击“隐藏所选内容”。

编辑器将所选内容变成一个区域,将其折叠,然后
显示一个带有省略号 (...) 的框以指示该区域
包含塌陷区域。您可以将鼠标指针悬停在该框上
查看其内容。

  • 要删除可折叠区域,请将其折叠,然后单击将其选中。

  • 在“编辑”菜单上,指向“大纲”,然后单击“停止隐藏当前内容”。

  • 折叠和展开单个区域

    1. 要折叠区域,请单击编辑器页边距中的减号 (-)。

    2. 要展开折叠区域,请单击页边距中的加号 (+)。

    折叠和展开所有区域

    在“编辑”菜单上,指向“大纲”,然后单击“切换全部”
    概述。

    来自 MSDN

    但这并不实际。

    对于 HTML,您可以在文本编辑器选项中手动编辑每个标签的大纲选项:

    在此处输入图像描述

    在此处输入图像描述

    最小行数的最小值为 1 才有效。

    有关 MSDN 的详细信息

    In Visual Studio, you can manually add outlined region like this :

    To create or remove a collapsible region

    1. Select the text you want to treat as a collapsible region.

    2. To create a collapsible region, on the Edit menu, point to Outlining, and then click Hide Selection.

    The editor turns the selection into a region, collapses it, and
    displays a box with an ellipsis (...) to indicate that the area
    contains a collapsed area. You can hold the mouse pointer over the box
    to see its contents.

    1. To remove a collapsible region, collapse it, and then click it to select it.

    2. On the Edit menu, point to Outlining, and then click Stop Hiding Current.

    To collapse and expand a single region

    1. To collapse a region, click the minus sign (-) in the margin of the editor.

    2. To expand a collapsed region, click the plus sign (+) in the margin.

    To collapse and expand all regions

    On the Edit menu, point to Outlining, and then click Toggle All
    Outlining.

    From MSDN

    But that's not really practical.

    For HTML you can manually edit the outline option for each tags in the text editors options :

    enter image description here

    enter image description here

    Minimum value of minimum lines is 1 to be effective.

    More info on MSDN

    谜泪 2024-11-01 04:07:53

    我的上下文菜单中没有“CollapseTag”选项。我通常做的是:

    1. 选择文本。
    2. 转到编辑 ->大纲->隐藏选择。

    使用 Ctrl+M、Ctrl+H

    我使用的是 Microsoft Visual Studio Pro 2013。

    I don't have "CollapseTag" option in my context menu. What I usually do is :

    1. Select text.
    2. Goto Edit -> Outlining -> Hide Selection.

    or

    use Ctrl+M, Ctrl+H

    I am using Microsoft Visual Studio Pro 2013.

    我一直都在从未离去 2024-11-01 04:07:53

    不,据我所知,不可能在视图中使用区域。您可以使用局部视图将视图区域分组为可重用的局部视图。

    请参阅新答案;它有效并达到了预期的效果。

    No, AFAIK it is not possible to use regions in a view. You could use partials to group regions of the view into reusable partial views.

    See the newer answer; it works and accomplishes the desired effect.

    眼前雾蒙蒙 2024-11-01 04:07:53

    Div 是可折叠的,因此您始终可以将它们与某种 id 一起使用来模拟区域。

    <div id="BLABLA">...</div>
    

    Divs are collapsible so you could always use them with some sort an id to kind of mimic regions.

    <div id="BLABLA">...</div>
    
    木森分化 2024-11-01 04:07:53

    您可以将母版页与 RenderPartialRenderAction 结合使用来缩小视图。两者都有自己的位置。

    You can use Masterpages with RenderPartial or RenderAction to make your views smaller. Both have their places.

    白鸥掠海 2024-11-01 04:07:53

    区域对我来说在视图中起作用,我可以定义一个区域,但它不会崩溃。如果您使用 @Artur 的使用 Collapse Tag 的方法,那么您几乎就可以了! :)

    regions sort-of work in views for me, I can define a region but it will not collapse. If you use @Artur's method of using Collapse Tag you're pretty much there! :)

    一人独醉 2024-11-01 04:07:53

    请注意,使用区域可能会导致视图出现问题 - 尽管它们在语法上是有效的,但代码和 HTML/SCRIPT 之间的指定通常会变得“混乱”,从而导致不可预测的行为。

    DIV 无疑是“更好”的解决方案,特别是额外的 DIV 可以在稍后更改 CSS 样式时提供更大的灵活性。

    如果您需要大量区域,请考虑进一步重构您的代码。

    Be aware that using regions can cause issues in views - even though they are syntactically valid, often the designation between code and HTML/SCRIPT becomes 'confused', resulting in unpredictable behavior.

    DIVs are certainly the 'better' solution, especially as extra DIVs allow more flexibility when changing CSS styles later.

    If you need lots of regions, then consider refactoring your code further.

    农村范ル 2024-11-01 04:07:53

    这对我有用:)

    <!-- #region
    <p> bla bla <p>
    @if(blabla)
    {
    
    }
    #endregion -->
    

    This worked for me :)

    <!-- #region
    <p> bla bla <p>
    @if(blabla)
    {
    
    }
    #endregion -->
    
    ~没有更多了~
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文