c# - 连接字符串没有从 dbconnection 传递到 dbfactory?
问题描述
我目前正在使用dbfactory? for accessing my database, but for some reason is the connection string empty when it is being initialized from a
dbconnection ?
怎么来的?
代码:
var connect = System.Configuration.ConfigurationManager.ConnectionStrings["Db"];
DbConnection db = new SqlConnection(connect.ConnectionString);
Console.WriteLine("DbConnection: " + db.ConnectionString);
DbProviderFactory factory = DbProviderFactories.GetFactory(db);
System.Data.Common.DbConnection cn = factory.CreateConnection();
Console.WriteLine("DbConnection from factory: " + cn.ConnectionString);
Repository = new Repository();
return Repository.Load(() => cn);
输出:
DbConnection: Server=<connetionstring>
DbConnection from factory:
解决方案
试试下面的代码:
//get the information out of the configuration file.
var connectionStringSettings =
ConfigurationManager.ConnectionStrings["Db"];
//get the proper factory and mandatory to have SQL Provide name in the connection string
DbProviderFactory factory =
DbProviderFactories.GetFactory(connectionStringSettings.ProviderName);
//create a command of the proper type.
DbConnection conn = factory.CreateConnection();
//set the connection string
conn.ConnectionString = connectionStringSettings.ConnectionString;
//open the connection
conn.Open();
Repository = new Repository();
return Repository.Load(() => conn);
推荐阅读
- node.js - $lookup 中用于比较 objectId 的 mongodb $match 操作未按预期工作
- ios - 如何在免费试用期内提出 IAP 购买请求?
- python - Python是否可以用pygame调用pickfile窗口?
- html - 如何摆脱包装器周围的空间
- django-rest-framework - 尝试获取序列化程序“DialogSerializer”上字段“对手”的值时出现 AttributeError
- f# - 使用 XmlProvider 的 EmbeddedResource 选项时缺少根元素
- python - 如何将“pandas”数据帧和“numpy”数组合并到 H5 中
- c# - 创建用户时如何修复 System.ObjectDisposedException
- python - Ctrl+C 取消进程后发送 EOFError 一次
- reactjs - 为什么没有使用反应在地图中绘制标记?