我在Visual Studio 2012中使用了Entity Framework。通过"反向工程代码构建实体模型"。
但是当我刚刚设置Visual Studio 2015并且通过NuGet设置EF电动工具时,我找不到"首先是反向工程代码"选项。
任何人都知道我应该怎么做?
谢谢!
答案 0 :(得分:76)
实体框架Power Tools 是Visual Studio extension,因此您需要先安装它。但是,存在一个问题,Visual Studio的受支持版本是2010年,2012年和2013年.Visual Studio 2015处于预览版。我认为这就是为什么它还没有被包括在内。但我有一个适用于我的解决方案,如果是这样的话。
在此文件(它是一个xml)中,您需要找到名为 SupportedProducts 的标记并添加Visual Studio 2015版本(转到帮助 - >关于Microsoft Visual Studio 以检查已安装的版本。
<SupportedProducts>
...
<VisualStudio Version="14.0">
<Edition>Ultimate</Edition>
<Edition>Community</Edition>
</VisualStudio>
</SupportedProducts>
覆盖.vsix中的 extension.vsixmanifest 文件,并尝试安装该文件。
希望这个帮助
我尝试使用该配置(版本:14.0和版本:旗舰版)并且工作正常。为了节省时间,您可以在此link下载。我还添加了社区版。
Julie Lerman在她的博客中写了一篇关于如何解决这个问题的article。
我强烈建议您在使用旧数据库时使用EntityFramework Reverse POCO Generator。如果您的模式可能会多次更改而不使用迁移,那么最好使用t4模板,它可以帮助您在每次更新数据库时重新生成模型。您唯一需要做的就是右键单击.tt文件并执行 运行自定义工具 选项,这就是全部。 EF Power Tools还有一个选项,允许您自定义t4模板。
答案 1 :(得分:15)
现在VS 2015已发布,您将需要使用EntityFramework Reverse POCO Generator https://visualstudiogallery.msdn.microsoft.com/ee4fcff9-0c4c-4179-afd9-7a2fb90f5838。虽然说明有点牵扯,但不再需要上面提到的调整/解决方法,而且效果很好。
答案 2 :(得分:4)
我已经更新了EF Power Tools以适用于Visual Studio 2017,如果有兴趣的话,我已经可以从我的DropBox下载:
答案 3 :(得分:3)
只需使用edm向导,并使用“首先从数据库中获取代码”,或者如果您不喜欢基于属性的代码,请使用ef reverse poco template
答案 4 :(得分:2)
它甚至可以通过设置社区来与社区版本一起使用。
答案 5 :(得分:0)
您可能很快就会看到的问题是即使EF电动工具安装在VS 2015社区版中,您也可能使用EF7,它在实体中通常有不同的方式来设置主键/配置。 您可能会获得POCO对象,但名称空间错误(使用EF 6)和覆盖
protected override void OnModelCreating(ModelBuilder modelBuilder)
用于关系处理而不是原始的dbcontext中的
class EntityNameMap : EntityTypeConfiguration<EntityName>
来自EF6的配置文件。
答案 6 :(得分:0)
步骤1-从https://visualstudiogallery.msdn.microsoft.com/72a60b14-1581-4b9b-89f2-846072eff19d下载实体框架电动工具。
步骤2-将下载文件扩展名从.vsix更改为.zip。
步骤3-解压缩.zip并打开extension.vsixmanifest(xml文件)并在支持的标签下添加以下内容并保存。
<VisualStudio Version="14.0">
<Edition>Pro</Edition>
</VisualStudio>
注意: - 没有任何其他版本。
步骤4-现在选择解压缩文件夹中的文件并压缩它们。不要压缩文件夹。
步骤5-现在更改文件夹名称和扩展名(例如EFPowerTools15.vsix)。
步骤6-您应该尝试仅从管理员帐户安装创建的工具。否则你仍然无法安装它。
答案 7 :(得分:0)
你可以简单地按照这两步 -
下载文件from here。
关注此视频教程( please run code snippet to see the tutorial
) -
<iframe width="100%" height="300" src="https://www.youtube.com/embed/yQN2Iuqb8kw" frameborder="0" allowfullscreen></iframe>
&#13;
可以找到更多 here (书面教程)。
如果查看教程有任何问题,请按this link获取教程。
我认为,这足以安装,它将解决您的问题:)