Я изучаю ASP.NET MVC 3 с помощью Entity Framework Code First.Я следую учебному пособию и скачал соответствующее решение для тестирования на моей локальной машине.Что-то, что я не очень хорошо понял, это автоматическое создание базы данных (если ее еще не было на диске).При первом запуске приложения база данных создается для меня.Это нормально.
Вот раздел в Web.config
<add name="BlogContext"
connectionString="Data Source=.\SQL2008;Initial Catalog=CodeFirstMVC.mdf;Integrated Security=SSPI"
providerName="System.Data.SqlClient" />
Но у меня есть две проблемы:
1st. В целях тестирования я удалилбазы данных на диске и снова запустить решение.Я думал, что база данных будет создана автоматически, но я ошибся: я получил сообщение об ошибке ниже:
{"Unable to open the physical file \"c:\\Program Files\\Microsoft SQL Server\\MSSQL10.SQL2008\\MSSQL\\DATA\\CodeFirstMVC.mdf.mdf\". Operating system error 2: \"2(failed to retrieve text for this error. Reason: 15105)\".\r\nCannot open database \"CodeFirstMVC.mdf\" requested by the login. The login failed.\r\nLogin failed for user 'sa'.\r\nFile activation failure. The physical file name \"c:\\Program Files\\Microsoft SQL Server\\MSSQL10.SQL2008\\MSSQL\\DATA\\CodeFirstMVC.mdf_log.LDF\" may be incorrect."}
Я заметил, что если я изменю имя файла в моем файле Web.config, то база данных снова будет успешносоздано. Можете ли вы объяснить мне? Почему я должен изменить имя базы данных, чтобы запустить его снова?
2nd. База данных создается в папке, расположенной в C: \ Program Files \ Microsoft SQL Server \ MSSQL10.SQL2008 \ MSSQL \ DATA.Я хотел бы хранить свою базу данных в каталоге App_Data. Как мне продолжить?