Entity Framework 4.1 Code First Freeze - PullRequest
       52

Entity Framework 4.1 Code First Freeze

1 голос
/ 14 июля 2011

У меня проблемы с работой EF 4.1 на моем компьютере.Кажется, это проблема с настройками моей базы данных.Я пробовал это простое прохождение: http://blogs.msdn.com/b/adonet/archive/2011/03/15/ef-4-1-code-first-walkthrough.aspx

Но когда оно достигает db.Categories.Add (food);он просто зависает.

У меня установлен обычный SQL Server 2008 R2, а не SQL Express.Также кажется, что существуют некоторые проблемы с созданием файлов .mdf вместо прямого подключения к локальному SQL-серверу.

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

Спасибо за любые ответы:)

edit: я теперь получаю исключение System.Data.ProviderIncompatibleExException с "Vendor не вернул ProviderMaifestToken-string"

Ответы [ 3 ]

1 голос
/ 14 июля 2011

Я нашел проблему.Эти учебные пособия не содержат информации о некоторых жизненно важных изменениях, которые мне нужны, чтобы заставить его работать.

1) Ваше приложение должно иметь файл App.config, содержащий строку подключения с именем, совпадающим с именем вашего класса, унаследованным от DbContext.В моем случае «TestEF_CF.ProductContext».

2) База данных не может быть создана до того, как вы начнете ее использовать.Просто установите в Initial Catalog имя, которое вы хотите, чтобы Entity Framework создавал при создании базы данных автоматически.

После того, как я это сделал, все заработало правильно.Я пошел дальше с первым шагом, но получил исключение, когда я попытался сохранить в базе данных.Когда EF автоматически создавал базу данных, все работало нормально.

Одна вещь, которая могла сделать ее более проблематичной в моей среде разработки, может заключаться в том, что я не могу напрямую использовать локальные mdf-файлы.Тем не менее, не повредит, если команда EF сможет поделиться этими подробностями более открыто, чем сейчас, это избавит меня (или нас) от некоторого разочарования.

1 голос
/ 14 июля 2011

Полагаю, это из-за повторной инициализации базы данных.Если ваш код EF попытается удалить и создать базу данных с открытым или подключенным SQL Management Studion.Эта ситуация возникает.

0 голосов
/ 31 мая 2012

Попробуйте установить источник данных в строке подключения на. \ SQLEXPRESS

Это сработало для меня

...