У меня небольшая проблема с моим недавним проектом. У меня есть строка подключения в моем файле web.config, но я хотел бы получить к ней доступ в своем классе, специфичном для sql.
Моя строка подключения выглядит следующим образом:
"Источник данных = (LocalDb) \ MSSQLLocalDB; AttachDbFilename = | DataDirectory | \ aspnet-Joblication-20180902120147.mdf; Интегрированная безопасность = True"
Он хранится в моем файле web.config.
Моя проблема в том, что функции asp.net по умолчанию могут получить доступ к этой базе данных, но я хотел бы сохранить другие данные в базе данных, поэтому я попытался получить к ней доступ с помощью класса SqlConnection. Я установил свойство ConnectionString объекта SqlConnection:
SqlConncetion connection = new SqlConnection()
connection.ConnectionString = "Data Source=(LocalDb)\\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\\aspnet-Joblication-20180902120147.mdf;Integrated Security=True";
Но я получаю эту ошибку каждый раз:
System.Data.SqlClient.SqlException: «Попытка присоединить авто
именованная база данных для файла * .mdf не удалась. База данных с тем же именем существует, или указанный файл не может быть открыт, или он находится на общем ресурсе UNC. '
Я заменил имя mdf-файла на '*', чтобы оно было короче и легко читаемым.
Если я понимаю это, мой файл .mdf уже прикреплен к MSSQLLocalDB, поэтому я должен подключиться к MSSQLLocalDB, и я должен иметь возможность каким-то образом получить доступ к файлу .mdf, верно?
Когда я пытаюсь это сделать:
connection = new SqlConnection();
connection.ConnectionString = "Data Source=(LocalDb)\\MSSQLLocalDB;Integrated Security=True";
Тогда, кажется, все в порядке, потому что соединение сейчас работает, а мои запросы - нет. Мои запросы пытаются получить данные из таблиц файла .mdf, но файл .mdf в этом соединении не указан.
Так как я могу это указать?