![](/img/trans.png)
[英]Entity Framework 5.0 PostgreSQL (Npgsql) default connection factory
[英]Entity Framework connection factory not working
我使用實體框架6並嘗試覆蓋連接字符串工廠。
我編寫了以下連接工廠:
internal class MyDBConnectionFactory : IDbConnectionFactory
{
public System.Data.Common.DbConnection CreateConnection(string nameOrConnectionString)
{
SAConnection connection = new SAConnection(ConnectionManager.GetConnectionString(nameOrConnectionString ?? "Default"));
return connection;
}
}
比我編寫自己的配置類要多:
public class MyDbConfiguration : DbConfiguration
{
public MyDbConfiguration()
{
// Set provider
SetProvider();
// Connection-Information
SetConnectionInformation();
}
private void SetProvider()
{
DbProviderServices provider = new iAnywhere.Data.SQLAnywhere.SAProviderServices();
this.SetProviderServices("iAnywhere.Data.SQLAnywhere", provider);
}
private void SetConnectionInformation()
{
this.SetDefaultConnectionFactory(new MyDBConnectionFactory());
}
}
最后,我將配置添加到db-context中:
[DbConfigurationType(typeof(MyDbConfiguration))]
public class TestDbContext : DbContext
{
}
我的問題是,將永遠不會調用MyDBConnectionFactory
中的CreateConnection
,並且得到以下錯誤消息: 基礎提供程序在打開時失敗。
為什么永遠都不會建立我的連接?
也許有人有一個解決方案,那將是完美的,謝謝。
重要的是,app.config中的配置部分不存在,因為它具有更高的優先級。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.