.net core 如何将库目标实体框架.Net 4.6.1与.Net核心应用程序结合使用
我有一个用于MVC应用程序的存储库库。它工作得很好,没有任何问题 目前,我正在使用.NETCore构建一个新的客户端应用程序。我引用了我现有的存储库项目,该项目的目标框架为4.6.1。我可以建立没有任何问题 当我尝试使用现有数据库上下文访问数据时。我遇到一个错误,它找不到DefaultConnection字符串.net core 如何将库目标实体框架.Net 4.6.1与.Net核心应用程序结合使用,.net-core,entity-framework-6,entity-framework-core,asp.net-core-2.0,.net-4.6,.net Core,Entity Framework 6,Entity Framework Core,Asp.net Core 2.0,.net 4.6,我有一个用于MVC应用程序的存储库库。它工作得很好,没有任何问题 目前,我正在使用.NETCore构建一个新的客户端应用程序。我引用了我现有的存储库项目,该项目的目标框架为4.6.1。我可以建立没有任何问题 当我尝试使用现有数据库上下文访问数据时。我遇到一个错误,它找不到DefaultConnection字符串 public class MyAppContext : DbContext { public MyAppContext():base("name=DefaultConnection
public class MyAppContext : DbContext
{
public MyAppContext():base("name=DefaultConnection"){}
这是我在config.json中的连接
"ConnectionStrings": {
"DefaultConnection": "Data Source=[SERVER]; Initial Catalog=[CATALOG]; User ID=[USERID];
Password=[PASSWORD];MultipleActiveResultSets=true;" },
我在.Net核心应用程序中添加了一个app.config文件,如下所示
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework">
<parameters>
<parameter value="System.Data.SqlClient" />
</parameters>
</defaultConnectionFactory>
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
</entityFramework>
<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=[SERVER]; Initial Catalog=[CATALOG]; User ID=[USERID];
Password=[PASSWORD];MultipleActiveResultSets=true; " providerName="System.Data.SqlClient" />
</connectionStrings>
</configuration>
更多
信息。“字符串
我试图将.net EntityFramework安装到我的.net核心应用程序中,但收到一条警告,它将不完全兼容,并且在较短的版本中出现了相同的错误
如何使.Net Core Web应用程序共享.Net 4.6库而不重写它们以使用.Net Core?答案是否定的(目前)
虽然Entity framework 6可以同时使用完整的NET framework和NET Core(因为它支持NET标准),但它只能使用完整的NET framework。请参阅
AFAIK有一些计划在将来(不确定何时)向EF6添加NET Core(或NET Standard)支持,目前唯一的选择是添加。但请注意,有一些根本性的区别,EF Core仍然不稳定(特别是查询到SQL的转换)如果您使用复杂的LINQ查询,可能会严重影响性能。如果您仅为CRUD使用EF,则端口可能没有那么大问题。我认为您的选择是将数据层用作.Net标准或使用EF Core..检查