5

我知道我可以在文件夹中添加模板

C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\Extensions\Microsoft\Entity Framework Tools\DBGen

使其在 DDL 生成模板下拉列表中可见,但是我需要将模板分发给我的团队成员,以便他们可以将模板添加到同一文件夹中。

我希望通过以某种方式将模板添加到 VS 2012 解决方案并使其在同一个下拉列表中可见,我可以达到相同的结果

你知道实现这一目标的方法吗?我正在使用 VS 2012 并使用 Model First 方法生成数据库

4

2 回答 2

1

我今晚玩了这个,发现这是可能的,但它有点像黑客。您必须手动编辑 edmx 文件,并确保它受版本控制,因为您必须编辑 edmx 文件的设计器部分(自动生成)。首先是将 t4 模板复制到项目的根目录(可能实际上必须与 edmx 位于同一文件夹中,不确定)。然后将 t4 模板添加到您的项目中。现在删除自定义工具条目(在属性中),这样它就不会尝试自动生成 t4 模板。最后在 edmx 文件的正确位置添加下面的设计器属性(我包含上下文以找到正确的位置):

  <!-- EF Designer content (DO NOT EDIT MANUALLY BELOW HERE) -->
    <edmx:Designer xmlns="http://schemas.microsoft.com/ado/2009/11/edmx">
      <edmx:Options>
        <DesignerInfoPropertySet>
          <DesignerProperty Name="DDLGenerationTemplate" Value="SSDLToSQLite3.tt" />
于 2013-09-18T02:49:21.760 回答
0

我最终制作了一个自定义模板来生成 datetime2 字段。虽然我无法让模板显示在属性框中的下拉列表中,但我能够将模板添加到与我的 .edmx 相同的文件夹中,将其包含在解决方案中,然后将模板的文件名直接输入到设计器的属性字段替换默认值。生成数据库和实体后,该值似乎被保留,我不需要直接编辑 edmx XML,我的自定义模板现在在使用它的位置旁边是源代码控制的。

于 2013-11-21T21:01:40.533 回答