2017-01-06 15 views
0

У меня есть проект ASP.net с localDB. Имя файла базы данных - ProjectDB.sdf, и я поместил его в папку App_Data.Connect LocalDB to ASP.net Project

Моя строка соединения:

<add name="ProjectConnection" connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\ProjectDB.sdf;Integrated Security=True" providerName="System.Data.SqlClient"/> 

Я пытаюсь использовать базу данных в моем файле CS, как это:

conn.ConnectionString = ConfigurationManager.ConnectionStrings["ProjectConnection"].ConnectionString; 
using(SqlCommand cmd = new SqlCommand()) 
{ 
    cmd.CommandText = "select JobTitleId, JobTitleText from LuJobTitle where JobTitleText like @SearchText + '%'"; 
    cmd.Parameters.AddWithValue("@SearchText", prefix); 
    cmd.Connection = conn; 
    conn.Open(); 

Приложение падает в conn.Open(); команда.

Сообщение об ошибке я получаю говорит:

An attempt to attach an auto-named database for file d:\user\documents\visual studio 2012\Projects\RealMatchSite\RealMatchSite\App_Data\ProjectDB.sdf failed. 
A database with the same name exists, or specified file cannot be opened, or it is located on UNC share. 

Что я делаю неправильно?

Спасибо заранее!

+0

Проверьте эту тему: [Попытка присоединить с автоматическим именем базы данных] (HTTP://stackoverflow.com/questions/12566036/an-attempt-to-attach-an-auto-named-database-for-file-database1-mdf-failed) –

+0

Вместо этого используйте SQL Server Express – ErikEJ

ответ

0

У вашего сервера db уже есть база данных с этим именем, поэтому вы получаете эту ошибку. Если это не так, попробуйте добавить это к вашей строке соединений:

User Instance=True 
+0

Когда я добавил «Пользовательский экземпляр = True «Я получил следующее:« Флаг входа экземпляра пользователя не разрешен при подключении к экземпляру пользователя SQL Server. Соединение будет закрыто ». Мой сервер db - это локальный хост. Как удалить все базы данных из него и сохранить единственное, что мне нужно? –

+0

У вас есть студия sql mgmt? Войдите и удалите его. – CodingYoshi

0

Попробуйте использовать начальный каталог, чтобы позвонить в свою базу данных. Надеюсь, это поможет.

ConnectionString = "Data Source = (LocalDB) \ v11.0; Initial Catalog = ProjectDB; Integrated Security = True"

+0

Я попробовал это и получил это сообщение об ошибке: «Невозможно открыть базу данных« ProjectDB », запрошенную при входе в систему. Ошибка входа. Ошибка входа для пользователя« Пользователь-ПК \ Пользователь ». –

+0

Защищен ли ваш сервер паролем? Если это так, включите ConnString = "Data Source = (LocalDB) \ v11.0; Initial Catalog = ProjectDB; Persist Security Info = True; User ID = user; Password = password"; – jmag

+0

В настоящее время вы используете ваши учетные данные для доступа к вашей базе данных. Хорошей новостью является обнаружение базы данных и попытка ее доступа. – jmag