Я работаю над решением VS2012 с проектом ASP.NET MVC 4.0 и несколькими библиотеками классов, такими как мои менеджеры, поставщики и проекты DataAccess. Мой класс dbContext определен внутри проекта DataAccess.Прочитайте строку подключения из app.config в моем проекте библиотеки DataAccess для dbContext
Моя цель - ограничить информацию о строке соединения в файле App.Config проекта DataAccess. Я пытаюсь избежать указания connectionString в другом месте проекта, так как это мои классы DataAccess, которые будут взаимодействовать с БД.
Теперь, если я укажу свою строку соединения своим классом dbContext, жестко кодируя его, мой проект отлично работает и способен считывать данные из БД.
public MyDbContext()
: base(@"Data Source=MYLAPTOP\SQL2012MAIN;Initial Catalog=MyDB;User ID=sa;Password=*****")
{
}
Но если указать строку подключения в файле app.config, как это:
<connectionStrings>
<add name="MyDBConnection" connectionString="Data Source=MYLAPTOP\SQL2012MAIN;Initial Catalog=MyDB;User ID=sa;Password=*****;Connect Timeout=200; pooling='true" providerName="System.Data.SqlClient" />
</connectionStrings>
и использовать его в моем DbContext classs следующим :
public MyDbContext()
: base("MyDBConnection")
{
}
Это не работает. Я попытался с помощью той же строки подключения в файле web.config моего проекта MVC также, но потом снова я получаю ту же ошибку (прилагается изображение):
Может кто-нибудь, пожалуйста, руководство меня ...
Благодаря Харя
Эй, Луи, много, чтобы ответить и посмотреть на мою проблему. Эта одиночная цитата (') была проблемой. Как только я удалил его, строка подключения начала работать как ожидается из моего файла web.config. – Hari
Однако, если я использую тот же conn. строка из моего файла app.config. Я получаю следующую ошибку: «При установлении соединения с SQL Server произошла ошибка, связанная с сетью или конкретным экземпляром.Сервер не найден или не был доступен. Проверьте правильность имени экземпляра и настройте SQL Server для удаленного подключения. (провайдер: Сетевые интерфейсы SQL, ошибка: 50 - Произошла ошибка локальной базы данных. Указанный экземпляр LocalDB не существует ». – Hari
Насколько вы думаете, так как мой файл web.config теперь не имеет поля строки подключения, мое приложение может пытаться прочитать его из appHost.config или что-то в этом роде? Ссылка на loaclDB предполагает, что она пытается использовать SQLServerExpress – Hari