Я пытаюсь опубликовать веб-сайт, используя ASP.NET MVC3 EF и CODEFIRST с бэкэндом SQL Server 2008. На моем локальном компьютере я использовал базу данных SQL Express для разработки, но теперь, когда я запускаю ее в прямом эфире, я хочу использовать свою производственную базу данных, размещенную на хосте. Проблема в том, что когда я пытаюсь запустить приложение, оно все еще использует мою локальную строку подключения к базе данных. Я полностью удалил старую строку подключения из файла web.config и использую тег <clear />
перед созданием новой строки подключения. Я также очистил решение и перестроил его, но каким-то образом он все еще подключается к старой базе данных. Что мне не хватает?
Это новая строка подключения:
<connectionStrings>
<clear />
<add name="CellularAutomataDBContext"
connectionString=" Server=XXX;
Database=CellularAutomata; User ID=XXX; Password=XXX; Trusted_Connection=False"
providerName="System.Data.SqlClient" />
</connectionStrings>
ОБНОВЛЕНИЕ
Когда я отлаживаю и смотрю на объект DBCONTEXT, это то, что отображается для его подключения:
Data Source=.\\SQLEXPRESS;Initial Catalog=CellularAutomata.Models.D1K2N3CARuleDBContext;Integrated Security=True;MultipleActiveResultSets=True"
Я не уверен, почему это происходит, потому что я нигде не могу найти его установленным. Кроме того, в конфигурации указано LazyLoadingEnabled = true, я предполагаю, что это может быть частью проблемы, возможно, он не загружает новую строку подключения. Где изменить эти параметры?
ОБНОВЛЕНИЕ 2
EFCodeFirst использует строку подключения по умолчанию, я не могу понять, как заставить ее принимать строку подключения, указанную в файле web.config.