【问题标题】:Modify MVCScaffolding t4 template for DB First为 DB First 修改 MVCScaffolding t4 模板
【发布时间】:2011-09-14 16:37:26
【问题描述】:

我希望将 MvcScaffolding 用于我已经拥有数据库的网站。

我在搭建脚手架时使用存储库开关为每个实体创建存储库,然后编辑文件以使用实体而不是 MvcScaffolding 上下文,显然如果我重新生成文件,那么此更改将被覆盖,我将不得不修复所有 80 多个存储库!

所以我使用

创建了一个自定义存储库模板
Scaffold CustomTemplate repository repository

我希望对其进行编辑,以便正确生成存储库。我知道我需要编辑这一行

<#= contextName #> context = new <#= contextName #>();

但我找不到应该用哪个变量替换 contextName

我知道我可以轻松地将模型名称硬编码到我将要执行的存储库文件中,但想知道是否有更好的方法来做到这一点?

想要一种以编程方式执行此操作的原因是针对项目中使用多个 EF 模型并且两者都使用脚手架的场景。

谢谢

一枪

【问题讨论】:

    标签: entity-framework asp.net-mvc-3 asp.net-mvc-scaffolding


    【解决方案1】:

    脚手架有一个 DbContextType 参数 -

    -DbContextType : 指定数据库上下文类的名称 应该生成或更新。默认情况下,我们使用名称 上下文,例如 SoccerSiteContext。

    您能否将其设置为相关模型的名称并避免更改模板?

    【讨论】:

    • 谢谢!当我已经浏览过史蒂夫·桑德森的博客时,我不知道我是怎么错过的! :-)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-03
    • 1970-01-01
    • 2011-04-07
    相关资源
    最近更新 更多