使用ado.net时我们需要定义一个连接字符串来创建一个sqlconnection对象,如果我们使用实体框架,我们也必须设计一个连接字符串。
是否可以通过任何方式获取实体框架使用的特定提供者连接字符串?
假设最初在ado.net上我们将CS定义为:
"Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;"
和Entityframework应该在这样的东西上翻译他们的CS格式,是否有可能获得这个?
我假装知道是否有可能获得由EF生成的特定提供者连接字符串?
如何在sqlserver连接字符串上转换entityframework连接字符串?
答案 0 :(得分:31)
string entityConnectionString = ...
var builder = new EntityConnectionStringBuilder(entityConnectionString);
string providerConnectionString = builder.ProviderConnectionString;
答案 1 :(得分:4)
找到解决方案:
System.Data.EntityClient.EntityConnection c = (System.Data.EntityClient.EntityConnection)EFDBcontext.Connection;
String S = c.StoreConnection.ConnectionString;