如何在Visual Studio 2019中使用旧版CRUD Scaffolder生成ASP.NET MVC5简化视图
解答
问题1:旧版CRUD Scaffolder迁移到VS2019的可行性
没有官方支持的迁移方案。VS2015/2017的MVC 5脚手架依赖对应版本的Microsoft.AspNet.Scaffolding系列组件,以及旧版IDE内置的Scaffolding宿主接口,这些组件和VS2019的脚手架框架互不兼容,强制安装旧版本包会触发依赖冲突,甚至导致IDE脚手架功能完全失效,不建议尝试。
问题2:自定义VS2019脚手架生成规则的方法
可以通过修改T4模板快速实现你需要的简化视图输出,操作步骤如下:
- 在你的ASP.NET MVC 5项目根目录新建名为
CodeTemplates的文件夹 - 打开VS2019内置MVC脚手架模板的默认路径:
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaffolding\Templates\MvcView(如果是专业版/企业版,把路径中的Community替换为Professional/Enterprise即可) - 将该目录下所有
.tt后缀的T4模板文件复制到你项目的CodeTemplates文件夹中 - 打开需要修改的对应视图模板,比如Create视图对应
Create.tt、Edit视图对应Edit.tt,定位到字段渲染的代码段,删除原本的Bootstrap容器包裹、冗余验证提示代码,仅保留生成@Html.EditorFor(model => model.属性名)的逻辑即可 - 保存修改后的模板,重启Visual Studio后,后续调用脚手架生成视图时,会优先读取项目内自定义的模板,直接输出你需要的简化格式代码
自定义T4模板的语法可以参考模板文件自带的注释,无需额外依赖第三方工具。
内容的提问来源于stack exchange,提问作者Mike
相关产品推荐
相关产品推荐

