Неверное значение строки подключения - PullRequest
1 голос
/ 08 марта 2012

У меня есть много баз данных на моем сервере, которые имеют те же две таблицы.Базы данных называются Hello1, Hello2 и т. Д. Они создаются во время выполнения.Я добавляю элемент .edmx в свой проект для Hello1.Я хочу использовать один и тот же файл .edmx для других баз данных, поскольку все они имеют одинаковые таблицы (конечно, с разными строками).

Вот строка подключения в моем файле web.config:

<connectionStrings>
    <add name="MyEntities" connectionString="metadata=res://*/MyEntities.csdl|res://*/MyEntities.ssdl|res://*/MyEntities.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=10.10.10.10;Initial Catalog=Hello1;User ID=myUser;Password=myPassword;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />
</connectionStrings>

В моем коде C # я хочу это:

MyEntities me = new MyEntities(theConnectionString);

theConnectionString будет таким же, как указано выше, но вместо Hello1 у него будет правильное имя базы данных.Каким должно быть значение theConnectionString?

Я пробовал это, но оно не работает:

"metadata=res://*/MyEntities.csdl|res://*/MyEntities.ssdl|res://*/MyEntities.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=10.10.10.10;Initial Catalog=Hello6;User ID=myUser;Password=myPassword;MultipleActiveResultSets=True&quot;"

1 Ответ

1 голос
/ 08 марта 2012

Попробуйте заменить &quot; на одинарные кавычки :

"metadata=res://*/MyEntities.csdl|res://*/MyEntities.ssdl|res://*/MyEntities.msl;provider=System.Data.SqlClient;provider connection string='Data Source=10.10.10.10;Initial Catalog=Hello6;User ID=myUser;Password=myPassword;MultipleActiveResultSets=True'"
...