Как включить MultipleActiveResultSets в приложении, запущенном в appharbor с надстройкой сиквелизатора? - PullRequest
4 голосов
/ 23 декабря 2011

При локальной разработке у меня установлена ​​строка соединения с MultipleActiveResultSets, равным TRUE. Тем не менее, когда я развертываю свое приложение и вводится секвенсатор connectionString, MultipleActiveResultSets опускается. Есть ли способ включить MultipleActiveResultSets или иным образом обновить строку подключения?

Кстати, я использую Entity Framework 4.1.

1 Ответ

7 голосов
/ 23 декабря 2011

Обновление: теперь можно включить несколько активных наборов результатов (MARS) для введенной строки подключения с помощью панели администрирования Sequelizer.Это рекомендуемый подход, так как web.config больше не нужно изменять, что вызывает перезагрузку AppDomain во время запуска

Вы можете создать строку соединения из URI, введенного в ваше приложение web.config,Процесс описан здесь , но я также включаю фрагмент ниже:

var uriString = ConfigurationManager.AppSettings["SQLSERVER_URI"];
var uri = new Uri(uriString);
var connectionString = new SqlConnectionStringBuilder
{
    DataSource = uri.Host,
    InitialCatalog = uri.AbsolutePath.Trim('/'),
    UserID = uri.UserInfo.Split(':').First(),
    Password = uri.UserInfo.Split(':').Last(),
    MultipleActiveResultSets = true,
}.ConnectionString;

Обратите внимание на MultipleActiveResultSets = true.

Если вам нужно также построитьСтрока соединения, отличная от Code-First, затем вам нужно использовать EntityConnectionStringBuilder для остальных, например:

...