如何在ASP.NET MVC5中创建自定义脚手架模板?

问题描述 投票:10回答:5

我正在使用ASP.NET MVC5和VS2013

我试过复制CodeTemplates文件夹

C:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ VWDExpress \ ItemTemplates \ CSharp \ Web \ MVC 4 \ CodeTemplates

使用子文件夹“AddController”,“AddView”和T4模板,然后我修改了一些模板,但是当我尝试添加View或Controller时没有任何反应。

asp.net-mvc .net-4.0 scaffolding asp.net-mvc-5 asp.net-mvc-scaffolding
5个回答
18
投票

首先,您的计算机上安装了Visual Studio 2013和2012。我试着查看你提供的路径,我找不到它。在您的路径上,您似乎正在尝试使用MVC4模板。这是我的路径:

C:\Program Files (x86)\Microsoft Visual Studio 12.0\
Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaffolding\Templates

下面是我如何为BaseController定制我的脚手架模板:

  1. 直接在项目文件夹中创建名为“CodeTemplates”的文件夹。
  2. 转到下面的路径,找到MvcControllerWithActions文件夹全部复制到文件夹“CodeTemplates” C:\Program Files (x86)\Microsoft Visual Studio 12.0\ Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaffolding\Templates
  3. 转到项目中的CodeTemplates - > MvcControllerWithActions。
  4. 在MvcControllerWithActions中有两个文件,Controller.cs.t4Controller.vb.t4,如果你使用C#,你可以删除Controller.vb.t4
  5. 打开Controller.cs.t4文件,将Controller名称修改为BaseController,如下所示: public class <#= ControllerName #> : BaseController { }
  6. 现在,当您尝试使用“添加新脚手架项目”创建MVC5控制器时,它将使用您自定义的模板。

希望能帮助到你。


3
投票

MVC4和MVC5模板位于不同的位置。虽然MVC4模板位于您提供的文件夹中,但MVC5模板位于此文件夹中:

C:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ Extensions \ Microsoft \ Web \ Mvc \ Scaffolding \ Templates

您需要执行的自定义操作是在项目文件夹中创建名为CodeTemplates的文件夹,并将要自定义的模板复制到CodeTemplates文件夹。

您需要使用EntityFramework命令复制MvcViewMvcControllerWithContext文件夹,以便与MVC 5 Controller一起使用视图。

警告

  • 两个目录必须具有相同的文件夹结构。我的意思是,不要将Create.cs.t4文件夹中的MvcView直接复制到CodeTemplates文件夹中。只需将整个MvcView文件夹复制到CodeTemplates文件夹即可。
  • 不要删除包含文件,如Imports.include.t4ModelMetadataFunctions.cs.include.t4,因为其他文件需要它们在那里。
  • 如果您正在使用C#,请随意删除带有.vb.t4扩展名的文件,反之亦然。

2
投票

MVC5 T4模板位于C:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ VWDExpressExtensions \ Microsoft \ Web \ Mvc \ Scaffolding \ Templates \ MvcView


2
投票

VS 2015模板中找到:

C:\ Program Files(x86)\ Microsoft Visual Studio 14.0 \ Common7 \ IDE \ Extensions \ Microsoft \ Web \ Mvc \ Scaffolding \ Templates \ MvcView


0
投票

对于Visual Studio 2017 MVC5 T4模板位于C:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ Community \ Common7 \ IDE \ Extensions \ Microsoft \ Web \ Mvc \ Scaffolding \ Templates \ MvcView

© www.soinside.com 2019 - 2024. All rights reserved.