【问题标题】:Overriding default ASP.Net MVC scaffolding HTML覆盖默认的 ASP.Net MVC 脚手架 HTML
【发布时间】:2011-02-24 16:13:57
【问题描述】:

每次我使用 Visual Studio 使用脚手架生成显示模板时,我都会得到如下信息:

<fieldset>
    ...
    <div class="display-label">Property</div>
    <div class="display-field">@Model.Property</div>
    ...
</fieldset>

有没有办法改变这个模板,让它使用 HTML 定义列表?

<dl>
    ...
    <dt>Property</dt>
        <dd>@Model.Property</dd>
    ...
</dl>

我知道您可以使用 DisplayTemplates,但我希望生成的代码在我的所有项目中都是默认的。

【问题讨论】:

    标签: asp.net asp.net-mvc asp.net-mvc-3


    【解决方案1】:

    看看下面的帖子:http://weblogs.asp.net/scottgu/archive/2009/01/27/asp-net-mvc-1-0-release-candidate-now-available.aspx。它描述了自定义模板。虽然它是关于 Mvc 1 的,但一切仍然适用

    【讨论】:

    • 好的,谢谢,好像是这样。但是,我无法在我的 Visual Studio 安装中找到“ItemTemplates”文件夹。任何想法为什么?我使用 Visual Studio 2010 Pro...
    • Thad 位于 Common7\IDE 下。在您的 VS 安装目录中(文件搜索也是您的朋友 :)
    • 我知道它们应该在哪里,但它们不在那里:S 搜索不会返回文件夹名称或现有模板的结果,例如“create.tt”。
    • 应该在这样的路径下:C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\ItemTemplates\CSharp\Web\MVC 3\CodeTemplates\AddView\CSHTML(在MVC 3)。如果它们不存在,您可能需要尝试重新安装 MVC 工具。
    【解决方案2】:

    如果您在查找项目模板时遇到问题,可以使用 Nuget 将它们添加到您的项目中:http://blogs.msdn.com/b/joecar/archive/2011/01/06/add-the-asp-net-mvc-3-code-templates-to-your-application-with-nuget.aspx

    【讨论】:

    • 是的,这就是我必须做的。谢谢:)
    【解决方案3】:

    您可以通过 T4 模板完成此操作。看看这个线程中的解释。 How do I create my own Scaffold Template in ASP.NET MVC 3?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-07-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-20
      • 2017-09-30
      相关资源
      最近更新 更多