Dot-Net

如何從實體框架獲取提供者特定的 ConnectionString

  • May 11, 2013

通常使用 ado.net 我們需要定義一個連接字元串來創建一個 sqlconnection 對象,如果我們使用實體框架,我們也必須定義一個連接字元串。

有什麼方法可以獲取實體框架使用的特定提供程序連接字元串?

假設最初在 ado.net 上,我們將 CS 定義為:

"Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;"

並且Entityframework應該將他們的CS格式翻譯成類似的東西,是否有可能獲得這個?

我假裝知道是否可以獲得由 EF 生成的特定提供程序連接字元串?

如何在 sqlserver 連接字元串上轉換實體框架連接字元串?

string entityConnectionString = ...

var builder = new EntityConnectionStringBuilder(entityConnectionString);
string providerConnectionString = builder.ProviderConnectionString;

找到了解決方案:

           System.Data.EntityClient.EntityConnection c = (System.Data.EntityClient.EntityConnection)EFDBcontext.Connection;
           String S = c.StoreConnection.ConnectionString;

引用自:https://stackoverflow.com/questions/6189176