首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么向csproj添加模型实体框架会失败?

为什么向csproj添加模型实体框架会失败?
EN

Stack Overflow用户
提问于 2018-02-21 20:55:39
回答 2查看 1.5K关注 0票数 6

这是我的项目文件csproj

代码语言:javascript
复制
<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
     <TargetFramework>net4.6</TargetFramework>
  </PropertyGroup>
  <ItemGroup>
     <PackageReference Include="EntityFramework" Version="6.2.0" />
  </ItemGroup>
</Project>

在VisualStudio 2017中,我尝试添加项目"ADO.NET实体数据模型“。当按下Add按钮对我抛出一个异常..。

在日志文件中,我得到了以下内容:

===================== 2018-02-21 15:23:47可恢复System.Reflection.TargetInvocationException:调用的目标引发了异常。-这个项目项目提供程序不支持项目类型'EntityDeploy‘。在Microsoft.VisualStudio.ProjectSystem.ProjectErrorUtilities.ThrowProjectExceptionHelper(Exception innerException,String unformattedMessage,Object[] args) at Microsoft.VisualStudio.ProjectSystem.ProjectErrorUtilities.ThrowProjectException(String message,Object arg0)àMicrosoft.VisualStudio.ProjectSystem.CpsProjectItem`1.d__25.MoveNext()

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-03-22 05:44:42

这个问题描述的异常与日志包含的异常相同:

System.Reflection.TargetInvocationException:调用的目标引发了异常。-这个项目项目提供程序不支持项目类型'EntityDeploy‘。

不幸的是,它没有一个直接的解决办法。

总的来说,您不应该期望EF工具以新的csproj格式顺利运行。在讨论存储库中有一个EntityFramework6,它收集一些已知的问题,用于迁移和EF工具。EF团队有一项明确的声明,我们不应该期望这些问题能够得到解决:

在翻转方面,在EF6核心应用程序中使用ASP.NET是可能的,但需要解决办法。例如,在这种情况下,将模型保存在单独的带有传统项目文件的.NET框架库中,并在处理迁移时从使用新项目系统的解决方案中卸载任何项目。 我们不愿承诺让EF6迁移与新的项目系统完全兼容,因为我们认为这将涉及一项重大的投资,这将阻碍我们在主要战略上的进展,但也许我们可以做一些成本较低的事情来减少解决方案的摩擦,例如,让它使您仍然需要将EF6模型放在一个单独的项目中,但至少您不需要卸载其他项目。

关于你的问题,我可以提出以下建议:

  1. 尝试更新到最新的Visual版本。我正在使用VS 2017版本15.3.0,我没有和你一样的问题。在模型生成和与设计人员一起工作期间,我仍然会得到自发的错误/警告消息,但是最终模型的生成是正确的。
  2. 如果它不适合您,请考虑切换到EF团队建议的解决方案,即将EF模型与传统的项目文件保持在一个单独的库项目中。

好吧,这样的建议可能不适合完美主义者,但是(同样)新的csproj格式还没有被所有现有的VS工具完全采用,现在还不知道它发生的时候。

票数 7
EN

Stack Overflow用户

发布于 2021-07-05 08:48:43

EF6 6.4.x现在支持Microsoft.Net.SDK风格的项目。

您应该注意到,EF6仍然不知道AutoGenerateBindingRedirects标志。

当你跑的时候

代码语言:javascript
复制
Add-Migrations Add_Customer_Table

如果您得到"System.IO.FileLoadException“,则应该手动将绑定重定向到app.config中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48915285

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档