2016-02-12 43 views
0

您好我想在Asp.net 5下使用EF6與npsql。我使用一個簡單的控制檯(asp.net5)進行測試和一個單獨的類庫(.net 4.5)爲數據訪問作爲一個簡單的測試環境。使用 nuget EntityFramework6.Npgsql安裝了EF6。也從project.json文件中刪除了.net核心依賴項。 我一直在收到以下錯誤的問題。EF6與Nspgsql在Asp.net 5

「System.NotSupportedException」類型的異常出現在EntityFramework.dll但在用戶代碼中沒有處理

其他信息:無法確定類型的供應商工廠的供應商名稱「Npgsql.NpgsqlFactory」。確保在應用程序配置中安裝或註冊了ADO.NET提供程序。

它似乎與'Npgsql.NpgsqlFactory'的提供者名稱有問題。但是配置中的提供者名稱已設置。可能需要在編譯時進行設置。有任何想法嗎?

app.config文件如下:

<?xml version="1.0" encoding="utf-8"?> 

<configuration> 
<configSections> 
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> 
</configSections> 
<startup> 
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /> 
</startup> 
<entityFramework> 
<providers> 
<provider invariantName="Npgsql.NpgsqlFactory" type="Npgsql.NpgsqlServices, Npgsql.EntityFramework"></provider> 
</providers> 
<defaultConnectionFactory type="Npgsql.NpgsqlConnectionFactory, Npgsql" /> 
</entityFramework> 
<system.data> 
<DbProviderFactories> 
<remove invariant="Npgsql" /> 
<add name="Npgsql" invariant="Npgsql" description=".Net Framework Data Provider for Postgresql" type="Npgsql.NpgsqlFactory, Npgsql" /> 
</DbProviderFactories> 
</system.data> 
</configuration> 

任何幫助將非常感激。非常感謝。

回答