2016-11-10 7 views
0

Я создал модели и выполнил первую миграцию кода, в результате чего были введены преобменные методы. Однако на более позднем этапе я добавил новые модели в свое приложение. Новые модели, которые я добавил, были Cart, OrderDetails и Order. Затем я набрал add-migration для каждой из этих моделей, которые в результате привели к пустым методам.Первая миграция кода приводит к пустым методам сбрасывания при добавлении новой модели в существующую базу данных.

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

Это новые классы модели, которые я добавил:

public class OrderDetail 
{ 
    public int OrderDetailId { get; set; } 
    public int OrderId { get; set; } 
    public int BookId { get; set; } 

    public int Quantity { get; set; } 

    public decimal UnitPrice { get; set; } 

    public virtual Book Books { get; set; } 
    public virtual Order Order { get; set; } 

} 


public class Cart 
{ 
     [Key] 
     public int RecordId { get; set; } 
     public string CartId { get; set; } 
     public int BookId{ get; set; } 
     public int Count { get; set; } 
     public virtual Book Book { get; set; } 
} 

class Order 
{ 
    public int OrderId { get; set; } 

    public string Username { get; set; } 

    public string FirstName { get; set; } 
} 

Вот мой DbContext

public BookStoreOnlineDB() : base("name=BookStoreOnlineDB") 
    { 
    } 

    public System.Data.Entity.DbSet<BookStoreOnline.Models.Book> Books { get; set; } 

    public System.Data.Entity.DbSet<BookStoreOnline.Models.Author> Authors { get; set; } 

    public System.Data.Entity.DbSet<BookStoreOnline.Models.BookStatus> BookStatus { get; set; } 

    public System.Data.Entity.DbSet<BookStoreOnline.Models.Genre> Genres { get; set; } 

    public System.Data.Entity.DbSet<BookStoreOnline.Models.Order> Orders { get; set; } 

    public System.Data.Entity.DbSet<BookStoreOnline.Models.OrderDetail> OrderDetails { get; set; } 

     public System.Data.Entity.DbSet<BookStoreOnline.Models.Cart>Carts { get; set; } 
} 

В общем, как я заселить новые вверх вниз методы в отношении новодобавленный Cart, OrderDetail и Detail.

N.B. Справочник модели модели и модели модели OrderDetails модели (модель книжной модели содержит миграцию данных, выполненную на ней на более ранней стадии и содержит заложенные методы).

Новое в этом и было бы очень полезно помочь. Благодаря

+0

Попробуйте выполнить обновление -Database -Script -SourceMigration $ InitialDatabase. Создает ли он сценарий с вашими предыдущими объектами? Если вы не слишком далеко, просто [сбросьте свои миграции] (https://weblog.west-wind.com/posts/2016/jan/13/resetting-entity-framework-migrations-to-a-clean-slate) –

+0

@SteveGreene Не работает, но спасибо в любом случае –

+0

Ваш вопрос говорит, что у add-migration не было никакого кода. Ваше решение говорит, что add-migration теперь имеет код. Что вы изменили или изменили? –

ответ

0

Ответ: в личку консоли: надстройку миграция initialcreate // это включало недавно добавленные модели, например, их идентификаторы, (телеги, ORDERDETAILS, модели под заказ) на вверх вниз Методы