Я не могу найти DataBase
в System.Data.Entity
.
Кто-нибудь знает почему?
Спасибо.
Я не могу найти DataBase
в System.Data.Entity
.
Кто-нибудь знает почему?
Спасибо.
Вам не нужно импортировать System.Data.Entity.Database
. Достаточно System.Data.Entity
.
Используйте Database.SetInitializer
вместо DbDatabase.SetInitializer
.
Если вы его пропустили, класс называется Database без "Db"
Вам нужно ссылаться на сборку EntityFramework.dll
, в которой объявляется класс Database. Вы можете установить его из соответствующего пакета NuGet.
У меня такая же проблема. Даз и Дарин ответ дали мне несколько подсказок.
В CTP имя класса называется "DbDatabase" в пространстве имен System.Data.Entity.Database.
Но в моей версии, которая является EF 4.1, класс называется "База данных" и находится в System.Data.Entity. Пространство имен System.Data.Entity.Database прошло как минимум в EF4.1
Угадав, вы обновились от Enterprise Library 4 CTP5 до Enterprise Library 4.1.
Пространства имен немного изменились, и теперь вы найдете классы, которые вам нужны в разных пространствах имен. Как показано в Kasper Skov, ответ здесь, класс DbDatabase
теперь находится в System.Data.Entity
и переименован в Database
.
Я еще не разработал, где IConfigurationConvention переместился как System.Data.Entity.ModelConfiguration.Conventions.Configuration
- это еще одно несуществующее пространство имен.
В моей версии Entity Framework 4.1.10715.0 ', System.Data.Entity.Database
является пространством имен, а не классом. DbDatabase
Является классом в этом пространстве имен и содержит метод SeInitializer
. Что PITA, чтобы найти, когда все, что я прочитал, противоречит этому.
Мне пришлось использовать следующее, чтобы получить демоверсию Стивена Сандерсона, чтобы переделать мою базу данных.
System.Data.Entity.Database.DbDatabase.SetInitializer(
new System.Data.Entity.Database.DropCreateDatabaseIfModelChanges<Mvc3ScaffoldDemo.Models.Mvc3ScaffoldDemoContext>());
Просто обновите Entity Framework, чтобы сделать это, просто щелкните правой кнопкой мыши по решению и выберите "Управление пакетом NuGet" и выполните поиск с помощью "EntityFramework". установите последнюю версию (6.1.3 или) или используйте "консоль пакетов NuGet" введите здесь описание изображения