Я работаю над проектом в C#/ASP.NET, и я столкнулся с ошибкой, которую я не могу решить. У меня есть база данных, в которой я создал несколько таблиц, и всякий раз, когда приложение пытается открыть базу данных, я получаю следующее сообщение об ошибке:«Невозможно открыть физический файл» при открытии базы данных
"Unable to open the physical file "path\App_Data\Cars.mdf". Operating system error 32: "32(The process cannot access the file because it is being used by another process.)". An attempt to attach an auto-named database for file path\App_Data\Cars.mdf failed. A database with the same name exists, or specified file cannot be opened, or it is located on UNC share."
Я SQL Express 2014 установлено, назвал экземпляр «SQLEXPRESS», написал это идентификатор экземпляра в Visual -> Options -> Tools -> Data Connections. В файле web.config, у меня есть:
< connectionStrings>
< add name="ConnectionString" providerName="System.Data.SqlClient" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename='path\App_Data\Cars.mdf';Integrated Security=True;User Instance=True"/>
< add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename='path\App_Data\AspnetDB.mdf';Integrated Security=True;User Instance=True"/>
< /connectionStrings>
И как я пытаюсь открыть базу данных является:
SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\Cars.mdf;Integrated Security=True");
con.Open();
Можете ли вы сказать мне, что делать? Благодаря!
UPDATE: для решения этой проблемы аргумент в SqlConnection должен быть таким же, как ConnectionString в web.config. Теперь есть еще один: когда я пытаюсь открыть базу данных по умолчанию, предоставляемую Visual Studio (с помощью Users, Roles, ecc), я получаю следующую ошибку: База данных «путь \ App_Data \ AspnetDB.mdf» не открывается, поскольку она версия 852. Этот сервер поддерживает версию 782 и ранее. Путь неудачи не поддерживается. Не удалось открыть новую базу данных «путь \ App_Data \ AspnetDB.mdf». CREATE DATABASE прервана. Не удалось выполнить попытку присоединения базы данных с автоименованием для файла file_path \ App_Data \ AspnetDB.mdf. База данных с таким же именем существует, или указанный файл не может быть открыт, или он расположен на долю UNC «Любые идеи
Не подключайтесь к файлу mdf. Вы всегда должны использовать имя базы данных на сервере и IP-адрес сервера (имя) в строке подключения. www.connectionstrings.com. – jdweng
Не могли бы вы сказать мне, где именно я должен изменить? AttachDbFilename в экземпляре SqlConnection? Спасибо! – flaviumanica
Если у вас есть другой вопрос, сделайте еще одно сообщение. –