如何在 VS 2015 中自定义 ASP.NET MVC 5 脚手架?
How to customize ASP.NET MVC 5 scaffolding in VS 2015?
我正在开发一个 ASP.NET MVC 5 项目。 (不是 ASP.NET 5)。最近我切换到 VS 2015。现在我决定要为我的 EF 实体创建自定义的脚手架视图和控制器。所以我搜索并找到Scott Hanselman's article about this topic。 (它显然是旧的)。我检查了 Hanselman 引用的文件夹:
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\ItemTemplates\CSharp\Web\MVC X\CodeTemplates\
虽然它存在于我的 VS 2013 安装中,但它在我的 VS 2015 安装中不存在。
更多诊断,以及我目前所做的:
- 脚手架(默认)在我的 VS 2015 安装中工作(但模板来自哪里?)
- 我已经在我的整个 VS 2015 安装文件夹中搜索 *.tt 没有找到 除了 EF 上下文生成器
- 我试图找到更多最近的文章,但它们要么过时,要么谈论 ASP.NET 5 (vnext) 项目中的脚手架。
我想使用 VS 2015 在我的 ASP.NET MVC 5 项目中自定义脚手架控制器和视图。理想情况下,我想 在项目级别 执行此操作,而不是全局覆盖开发人员机器级别的模板。 (正如 Hanselman 的方法所允许的那样)
基于 EF 实体生成自定义视图和控制器的任何想法或替代模式(不是从零开始并重新发明轮子)
我没有找到模板,但我可能有一个解决方案,但我尚未在 VS2015 上进行测试,您可以获取 Scott Hanselman 和 Steve Sanderson 提供的 MvcScaffolding nuget 包 https://www.nuget.org/packages/MvcScaffolding/1.0.9。
它有点旧但是在 VS2013 上工作。
和 link 关于 steven sanderson 博客上的软件包
http://blog.stevensanderson.com/2011/01/13/scaffold-your-aspnet-mvc-3-project-with-the-mvcscaffolding-package/
ASP.NET MVC 5 将脚手架模板存储在 Common7\IDE\Extensions\Microsoft\Web\Mvc
文件夹中,包括 Visual Studio 2013 和 Visual Studio 2015。感谢 Imran Baloch's post 关于自定义 Web API 2 个模板。
每个模板类型都有一个包含版本号的单独文件夹,而不是特定于版本的文件夹
对于 visual studio 2015
,模板的路径已更改请注意 14 和 web
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaffolding\Templates\MvcView
C:\Program Files (x86)\Microsoft Visual Studio
14.0\Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaffolding\Templates\MvcView
我正在开发一个 ASP.NET MVC 5 项目。 (不是 ASP.NET 5)。最近我切换到 VS 2015。现在我决定要为我的 EF 实体创建自定义的脚手架视图和控制器。所以我搜索并找到Scott Hanselman's article about this topic。 (它显然是旧的)。我检查了 Hanselman 引用的文件夹:
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\ItemTemplates\CSharp\Web\MVC X\CodeTemplates\
虽然它存在于我的 VS 2013 安装中,但它在我的 VS 2015 安装中不存在。
更多诊断,以及我目前所做的:
- 脚手架(默认)在我的 VS 2015 安装中工作(但模板来自哪里?)
- 我已经在我的整个 VS 2015 安装文件夹中搜索 *.tt 没有找到 除了 EF 上下文生成器
- 我试图找到更多最近的文章,但它们要么过时,要么谈论 ASP.NET 5 (vnext) 项目中的脚手架。
我想使用 VS 2015 在我的 ASP.NET MVC 5 项目中自定义脚手架控制器和视图。理想情况下,我想 在项目级别 执行此操作,而不是全局覆盖开发人员机器级别的模板。 (正如 Hanselman 的方法所允许的那样)
基于 EF 实体生成自定义视图和控制器的任何想法或替代模式(不是从零开始并重新发明轮子)
我没有找到模板,但我可能有一个解决方案,但我尚未在 VS2015 上进行测试,您可以获取 Scott Hanselman 和 Steve Sanderson 提供的 MvcScaffolding nuget 包 https://www.nuget.org/packages/MvcScaffolding/1.0.9。 它有点旧但是在 VS2013 上工作。
和 link 关于 steven sanderson 博客上的软件包 http://blog.stevensanderson.com/2011/01/13/scaffold-your-aspnet-mvc-3-project-with-the-mvcscaffolding-package/
ASP.NET MVC 5 将脚手架模板存储在 Common7\IDE\Extensions\Microsoft\Web\Mvc
文件夹中,包括 Visual Studio 2013 和 Visual Studio 2015。感谢 Imran Baloch's post 关于自定义 Web API 2 个模板。
每个模板类型都有一个包含版本号的单独文件夹,而不是特定于版本的文件夹
对于 visual studio 2015
,模板的路径已更改请注意 14 和 web
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaffolding\Templates\MvcView
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaffolding\Templates\MvcView