1

是否有可能更改 MvcScaffolding 生成存储库、视图和控制器的默认项目和文件夹?

4

3 回答 3

1

如果您从命令行窗口触发脚手架,则可以

例如:

> Scaffold DbContext <modelType> <dbContextName> -Folder /Models/Entities

更多信息http://blog.stevensanderson.com/2011/01/13/mvcscaffolding-standard-usage/

于 2013-01-14T14:01:53.210 回答
1

输出文件夹在运行模板的 powershell 脚本中指定。您需要生成自定义脚手架,并将它们设置为默认脚手架。这是我为存储库所做的:

  1. 在包管理器控制台中:Scaffold CustomScaffolder MyRepository
  2. 右键单击解决方案和“在 Windows 资源管理器中打开文件夹”
  3. 导航到“packages\T4Scaffolding.1.0.8\tools\EFRepository”
  4. 将 ps1 powershell 脚本的内容和 t4 模板文件复制到步骤 1 中创建的 ps1 和 t4 文件中(覆盖脚手架文本)。
  5. 更改 ps1 文件中指定的输出路径,例如 $outputPath = Join-Path Repositories ($foundModelType.Name + "Repository")
  6. 将新的 ps1 文件中指定的模板文件更改为新的模板文件名 egAdd-ProjectItemViaTemplate $outputPath -Template MyRepository
  7. 将存储库的默认模板更改为新模板:Set-DefaultScaffolder Repository MyRepository

视图和控制器应该是类似的过程,除了原始的 ps1 和 t4 文件在“packages\MvcScaffolding.1.0.9\tools”中

于 2013-04-23T14:45:38.897 回答
0

关于存储库脚手架:

  1. 转到解决方案文件夹中的packages\T4Scaffolding.1.0.8\tools\EFRepository
  2. 右键单击T4Scaffolding.EFRepository脚本并选择编辑
  3. 找到行$outputPath = Join-Path Models ($foundModelType.Name + "Repository")并用您想要的文件夹名称/路径替换单词“ Models ”
  4. 关闭并保存脚本

关于其他脚手架(动作、视图等)

  1. 与上述步骤相同,只是脚本位于packages\MvcScaffolding.1.0.9\tools文件夹中
于 2014-02-17T16:33:35.413 回答