如何在Visual Studio 2015中添加EntityObject Generator?

时间:2016-08-08 07:08:52

标签: c# entity-framework entity-framework-6 windows-applications

我在VS2015中安装了最新的Entity Framework版本(EntityFramework.6.1.3)。我在项目中添加了EF,并删除了来自DBContext的2 .tt文件( edmx_file_name.tt edmx_file_name.Context.tt )。

现在我尝试通过在EF Designer中打开模型来添加EF 6.x代码生成模板,右键单击设计图面并选择添加代码生成项

要在ObjectContext中添加代码生成,我需要安装EF 6.x EntityObject Generator。我是从here下载的。

但我无法在VS 2015中安装它。

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:3)

嗯,对于像我这样不再安装VS2013的那些可怜的灵魂,有更容易的选择。您只需为VS2015安装lambda function

当然,VSIX会向你大喊大叫它并不适合2015年。the EF 6.x EntityObject Generator for C#:)

不支持或宣传它与VS2015兼容的事实"并不意味着它不起作用。它是一包T4模板。从那时起,它们的语法或功能没有太大变化。

从市场下载VSIX,将其保存到某个位置,解压缩(只是一个ZIP存档),然后编辑名为:extension.vsixmanifest 的文件。在里面你会发现这样的块:

<SupportedProducts>
  <VisualStudio Version="10.0">
    <Edition>VCSExpress</Edition>
    <Edition>VWDExpress</Edition>
    <Edition>Pro</Edition>
  </VisualStudio>
  <VisualStudio Version="11.0">
    <Edition>VCSExpress</Edition>
    <Edition>VWDExpress</Edition>
    <Edition>Pro</Edition>
  </VisualStudio>
  <VisualStudio Version="12.0">
    <Edition>VCSExpress</Edition>
    <Edition>VWDExpress</Edition>
    <Edition>Pro</Edition>
  </VisualStudio>
</SupportedProducts>

复制,粘贴,为Version="13.0"添加一个块,也可能更进一步(14.0 = VS2017?),保存,将其拉回,将扩展名更改为.vsix并尝试安装。

在VS2015上为我工作,安装没有任何问题,添加了EntityObject T4模板,并按照原样从EDMX生成代码。

答案 1 :(得分:1)

从现在开始,Visual Studio 2015中不支持任何EntityObject Generator模板,更改解决方案是,使用Visual Studio 2013打开您的解决方案,然后打开您的edmx图,右键单击,选择&#34;添加代码生成项&# 34;,您将看到&#34; EF 6.X EntityObject Generator&#34;,如果您看不到它,请转到&#34; online&#34;菜单,你会看到&#34; EF 6.x EntityObject Generator For C#&#34;显示。选择EntityObject Generator并单击&#34; Add&#34;按钮将其添加到您的数据访问层项目。 tt将自动为您生成EntityObject类。保存项目,退出visual studio 2013.使用visual studio 2015重新打开解决方案。完成。