Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Базы данных (ADO.NET, LinqToSql, ORM Entity Framework, NHibernate)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.06.2013, 00:11   #1
D][mon
Форумчанин
 
Регистрация: 05.01.2010
Сообщений: 150
По умолчанию EntityFramework 5.0: Базовая модель контекста "BookContext" изменилась с момента создания базы

Доброго времени суток!
ASP .NET MVC4
1. сделал локальную БД.
строка подключения:
Код:
  <connectionStrings>
    <add name="BookContext" connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename='|DataDirectory|\BooksDB.mdf';Integrated Security=True" providerName="System.Data.SqlClient" />
  </connectionStrings>
2. Добавил в бд таблицы Books, Authors, Series
скрипты:
Код:
CREATE TABLE [dbo].[Books] (
    [Id]       INT            IDENTITY (1, 1) NOT NULL,
    [Name]     NVARCHAR (MAX) NOT NULL,
    [AuthorId] INT            NOT NULL,
    [SeriesId] INT     NULL,
    [AddDate]  DATETIME       NOT NULL,
    CONSTRAINT [PK_dbo.Books] PRIMARY KEY CLUSTERED ([Id] ASC),
	CONSTRAINT [FK_BOOKS_AUTHORS] FOREIGN KEY ([AuthorId]) REFERENCES AUTHORS ([Id]),
	CONSTRAINT [FK_BOOKS_SERIES] FOREIGN KEY ([SeriesId]) REFERENCES SERIES ([Id]) ON DELETE SET NULL
);

CREATE TABLE [dbo].[Series] (
    [Id]   INT            IDENTITY (1, 1) NOT NULL,
    [Name] NVARCHAR (MAX) NULL,
    CONSTRAINT [PK_dbo.Series] PRIMARY KEY CLUSTERED ([Id] ASC)
);

CREATE TABLE [dbo].[Authors] (
    [Id]   INT            IDENTITY (1, 1) NOT NULL,
    [Name] NVARCHAR (MAX) NULL,
    CONSTRAINT [PK_dbo.Authors] PRIMARY KEY CLUSTERED ([Id] ASC)
);
3. Добавил модели и контекст.
Код:
public class Book
    {
        public int Id { get; set; }
        public string Name { get; set; }

        public int? AuthorId { get; set; }
        public int? SeriesId { get; set; }

        public DateTime AddDate { get; set; }

    }
    public class Author
    {
        public int Id { get; set; }
        public string Name { get; set; }
    }
    public class Series
    {
        public int Id { get; set; }
        public string Name { get; set; }
    }
    public class BookContext:DbContext
    {
        public DbSet<Book> Books { get; set; }
        public DbSet<Series> Series { get; set; }
        public DbSet<Author> Authors { get; set; }
    }
Тут все работает, операции с данными все успешны.
если же я добаляю Свойства навигации в класс Book, ловлю исключение Базовая модель контекста "BookContext" изменилась с момента создания базы.
нерабочий
Код:
public class Book
    {
        public int Id { get; set; }
        public string Name { get; set; }

        public int? AuthorId { get; set; }
        public int? SeriesId { get; set; }

        public DateTime AddDate { get; set; }

        public Author Author { get; set; }
        public Series Series { get; set; }
    }
    public class Author
    {
        public int Id { get; set; }
        public string Name { get; set; }

        public IEnumerable<Book> Books { get; set; }
    }public class Series
    {
        public int Id { get; set; }
        public string Name { get; set; }

        public IEnumerable<Book> Books { get; set; }
    }
что делать?

Последний раз редактировалось D][mon; 20.06.2013 в 00:13.
D][mon вне форума Ответить с цитированием
Старый 20.06.2013, 15:11   #2
D][mon
Форумчанин
 
Регистрация: 05.01.2010
Сообщений: 150
По умолчанию сделал ход конем (т.е. через (_Y_) )

удалил файлы БД,
создал в коде через LinqToSql
(_db.DataBase.Create())
D][mon вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
задачи по теме "моделирование":1) построить модель на графе 2) построить табличную модель 3) решить задачу венгерским методом Елена3110 Помощь студентам 1 05.05.2013 11:03
Создать класс "Фигура", от него наследованием создать 3 класса ("треугольник", "четырехугольник", "окружность") funnyy Помощь студентам 3 17.10.2012 17:40
Создать модель полета группировки спутников "Арктика" Demon7666 Фриланс 0 27.05.2012 12:52
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04