Где моя база данных в Visual Studio 2010? - PullRequest
0 голосов
/ 21 октября 2011

Я создаю свой первый проект в (C #) ASP.NET MVC3 с использованием Visual Studio 2010 Professional, я создаю очень простую систему блогов. Во время тестов я создал несколько таблиц, и теперь я хочу сохранить разные данные в этих таблицах, но я получаю эту ошибку:

The model backing the 'CategoryContext' context has changed since the database was created. Either manually delete/update the database, or call Database.SetInitializer with an IDatabaseInitializer instance. For example, the DropCreateDatabaseIfModelChanges strategy will automatically delete and recreate the database, and optionally seed it with new data.

Очевидно, мне нужно обновить таблицы в базе данных, но я не могу найти, где я могу получить доступ к таблицам. Я могу открыть Обозреватель серверов, используя CTRL + ALT + S, но там нет Базы данных или таблиц.

Вот скриншот этого:

screenshot http://img710.imageshack.us/img710/8944/screenshot001kd.png

Где / как я могу найти и / или отредактировать фактические таблицы базы данных?

Спасибо.

Ответы [ 2 ]

1 голос
/ 21 октября 2011

Ну, вот лучшее, что я могу сделать для вас:

Если вы используете SQL Compact Edition, то вам нужно заглянуть в папку вашего проекта в файловой системе и найти папку с именем app_data, и вы должны иметь базу данныхтам.

В качестве альтернативы вы можете просто открыть свой файл web.config и найти раздел, который является разделом «ConnectionStrings», и просто найти местоположение базы данных.

Если он находится вSQL Server Express, затем в окне обозревателя баз данных щелкните соединения с базой данных и создайте соединение с локальным сервером sql express.Вы должны увидеть его в списке баз данных как имя машины \ sqlexpress.

0 голосов
/ 11 ноября 2011

Исходя из вашей ошибки, я догадываюсь, что вы используете подход кода Entity Framework в первую очередь.

Произошло то, что Entity Framework создал базу данных для вас при локальной экспресс-установке sql.Чтобы найти фактическую базу данных, загляните в файл web.config и найдите раздел строки подключения, в котором будет указан сервер и каталог для базы данных.Вы можете использовать Visual Studio для доступа к базе данных, используя область подключения к данным, расположенную на панели обозревателя серверов на вашей картинке.Или вы можете использовать Sql Server Management Studio, чтобы сделать то же самое.

Теперь причина, по которой вы получаете ошибку, заключается в том, что Entity Framework создал эту базу данных на основе сущностей, которые вы изначально определили.После внесения изменений база данных больше не соответствует сущностям, и вы получаете сообщение об ошибке, указанное выше.Ваше решение состоит в том, чтобы либо удалить вашу базу данных, как только вы ее нашли, и позволить авто-магии повториться снова, либо вам нужно будет внести некоторые изменения в свой код, чтобы не генерировать базу данных автоматически при каждом изменении схемы.

Я бы посоветовал вам просмотреть MSDN ADO.NET Entity Framework 4.1 и почитать о стилях разработки «сначала код».

Удачи, и надеюсь, что это вам поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...