Как получить специфическую для провайдера ConnectionString из Entity Framework - PullRequest
14 голосов
/ 31 мая 2011

используя ado.net, нам нужно определить строку подключения для создания объекта sqlconnection, и если мы используем структуру сущностей, мы должны также определить строку подключения.

- это любой способ получить конкретныйСтрока подключения провайдера, используемая платформой сущностей?

Предполагая, что первоначально на ado.net мы определяем CS как:

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

и Entityframework должен переводить их формат CS на что-то подобное, возможно ли эточтобы получить это?

что я притворяюсь, чтобы знать, возможно ли получить конкретную строку подключения поставщика, сгенерированную EF?

Как я могу преобразовать строку соединения entityframework на строку соединения sqlserver?

Ответы [ 2 ]

31 голосов
/ 31 мая 2011
string entityConnectionString = ...

var builder = new EntityConnectionStringBuilder(entityConnectionString);
string providerConnectionString = builder.ProviderConnectionString;
4 голосов
/ 31 мая 2011

Нашли решение:

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