相关疑难解决方法(0)

实体框架中的提供者连接字符串

如果使用对象上下文数据模型(使用EDMX文件),则在创建期间可能需要在配置文件中指定连接字符串.

遗憾的是,连接字符串不是公共连接字符串,因为它包含实体连接所需的一些内容.MySql连接示例:

<add name="MyDbEntities" connectionString="metadata=res://*/Namespace.MyDb.csdl|res://*/Namespace.MyDb.ssdl|res://*/Namespace.MyDb.msl;provider=MySql.Data.MySqlClient;provider connection string=&quot;server=172.17.17.154;User Id=user;password=password;Persist Security Info=True;database=MyDatabase;Convert Zero Datetime=true&quot;" providerName="System.Data.EntityClient" />
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是此连接字符串包含参数"provider connection string"中提供程序的连接字符串.

出于特定原因,我需要创建一个与实体模型无关的新MySqlConnection.为了创建MySqlConnection,我需要为它提供mysql连接字符串 - 这是实体模型的提供者连接字符串,我知道我需要的连接字符串始终是实体模型的相同连接字符串.

但是如何获得提供程序连接字符串programmaticaly?我被困在浏览模型实例但没有成功......

下列:

ModelInstance.Connection.ConnectionString
Run Code Online (Sandbox Code Playgroud)

包含类似"name = TestBotEntities"的内容,甚至不包括整个连接字符串.所以我尝试过:

ConfigurationManager.ConnectionStrings["MyDbEntities"].ConnectionString
Run Code Online (Sandbox Code Playgroud)

但那个包含整个实体连接字符串,我只是不知道如何解析它,如何只从它获取提供者连接字符串.

c# entity-framework edmx objectcontext

18
推荐指数
1
解决办法
1万
查看次数

标签 统计

c# ×1

edmx ×1

entity-framework ×1

objectcontext ×1