簡體   English   中英

使用 ASP.NET Core 2.2 Web API 項目中的實體框架類庫時拋出異常

[英]Exception thrown when using Entity Framework class library from ASP.NET Core 2.2 Web API project

我的解決方案中有 2 個項目:

  1. 一個 ASP.NET Core 2.2 Web API 項目
  2. .net 框架類庫

在我的類庫中,我使用數據庫優先的方法創建了我的實體。 在我的 Web API 項目中,我引用了類庫。

當我運行應用程序時,此時拋出異常:

return entities.IP_Types.ToList();

這是下面的例外:

System.ArgumentException: '具有不變名稱'System.Data.SqlClient' 的 ADO.NET 提供程序未在計算機或應用程序配置文件中注冊,或者無法加載。 有關詳細信息,請參閱內部異常。

我的app.config文件似乎已正確設置。 我有以下代碼:

<entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
    <providers>
        <provider invariantName="System.Data.SqlClient" 
                  type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
    </providers>
</entityFramework>

通過將此行添加到程序的 Main 方法,我設法克服了異常:

DbProviderFactories.RegisterFactory("System.Data.SqlClient", SqlClientFactory.Instance);

檢查您的數據庫連接字符串。 它缺少providerName或配置文件缺少 entityFramework 提供程序的設置。

<entityFramework>
    <providers>
        <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
    </providers>
</entityFramework>

要了解有關連接配置的更多信息,請查看EF 數據庫提供程序

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM