我想从我的连接字符串中获取数据源。我知道我可以使用
ConfigurationManager.ConnectionStrings["name"].ConnectionString
并用正则表达式将其提取出来。但是,似乎应该有一种简单的方法来获取这个数据源。我不想从字符位置抓取,因为这对于字符串顺序的任何更改都是脆弱的。
更新
我正在使用 Entity Framework 4。连接字符串生成并以
metadata=res://*/
这似乎使事情复杂化,因为建议的对象 SqlConnectionStringBuilder
抛出错误
"Keyword not supported: 'metadata'."
最佳答案
可以这样做 (vb.net):
Dim varConnectionString = Web.Configuration.WebConfigurationManager.ConnectionStrings("iSAMDBEntities").ConnectionString
Dim ecb As EntityConnectionStringBuilder = New EntityConnectionStringBuilder(varConnectionString)
varConnectionString = ecb.ProviderConnectionString
Dim varBiulder As SqlConnectionStringBuilder = New SqlConnectionStringBuilder(varConnectionString)
varServidor = varBiulder.DataSource
varBaseDatos = varBiulder.InitialCatalog
varUsuario = varBiulder.UserID
varClave = varBiulder.Password
希望这对您有所帮助。
关于c# - 是否有 .NET 方法来获取 Entity Framework 连接字符串的数据源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5899332/