c# - 是否有 .NET 方法来获取 Entity Framework 连接字符串的数据源?

标签 c# .net .net-4.0 entity-framework-4

我想从我的连接字符串中获取数据源。我知道我可以使用

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/

相关文章:

c# - 为什么 Json.NET 解析器会自动本地化它解析的日期?

C#:不可变类

c# - 十六进制转换为 ASCII 的行

c# - 将最小起订量用于通用方法

c# - 如何使用 C# 验证服务器上是否存在计划任务?

c# - 当我们创建其继承类的新对象时,是否创建了基类的对象?

c# - 如何存储/检索 RSA 公钥/私钥

c# - 如何修复小数分隔符有问题的应用程序

c# - 带有动态下拉菜单的 MVC 3 编辑器模板

C# 从内部代码事件 WF 4.0 以编程方式终止工作流