Я довольно новичок в Entity Framework и C#, поэтому прошу прощения, если моя способность описать проблему минимальна.Ручные изменения в базе данных Entity Framework приводят к ошибке
У меня есть проект .NET Web Forms, размещенный на Azure, который использует Entity Framework для обработки всех таблиц базы данных. Недавно у меня возникла проблема с отладкой, и я создал тестовые записи, которые я удалил, когда проблема была решена с помощью Microsoft SQL Server Management Studio. К сожалению, сейчас я получаю следующее сообщение об ошибке: «Модель поддержав контекст„RegSysContext“изменились, так как база данных была создана Рассмотрим с помощью Code First Миграции, чтобы обновить базу данных»
Класс RegSysContext можно увидеть ниже.
Из чего я понимаю, это связано с метаданными, которые Entity Framework больше не использует для базы данных. Данные в базе данных необходимы для сохранения, иначе я бы просто уничтожил и забыл об этом.
Как я могу решить эту проблему в размещенном веб-приложении и как я могу редактировать базу данных в будущем, не вызывая этой проблемы?
Заранее благодарен!
public class RegSysContext : DbContext
{
// Default Constructor for the context class
public RegSysContext() : base("RegSys")
{
}
// Properties of the context class
public DbSet<CustomerAccountMembership> AccountMembershipRecords { get; set; }
// For Organization Account functionality
public DbSet<RegSysAccount> RegSysAccounts { get; set; }
public DbSet<Subscription> Subscriptions { get; set; }
public DbSet<SubscriptionRecord> SubscriptionRecords { get; set; }
public DbSet<PaymentInfo> PaymentAccountInfoRecords { get; set; }
// For Auction functionality
public DbSet<Auction> auctions { get; set; }
public DbSet<AuctionItem> auctionItems { get; set; }
public DbSet<AuctionLot> auctionLots { get; set; }
public DbSet<AuctionDonation> auctionDontations { get; set; }
public DbSet<AuctionSale> auctionSales { get; set; }
public DbSet<ItemInAuctionRecord> itemInAuctionRecords { get; set; }
// For Event functionality
public DbSet<Event> events { get; set; }
public DbSet<EventParticipant> eventParticipants { get; set; }
public DbSet<RegistrationPeriod> registrationPeriods { get; set; }
public DbSet<RegType> regTypes { get; set; }
public DbSet<RegPrice> regPrices { get; set; }
public DbSet<EventCategory> EventCategories { get; set; }
//public DbSet<RegistrationConfig> regConfigs { get; set; }
//public DbSet<RegFormConfig> regFormConfigs { get; set; }
// For Organization functionality
public DbSet<Lodge> Lodges { get; set; }
// For Participant functionality
public DbSet<Participant> Participants { get; set; }
public DbSet<Charge> Charges { get; set; }
public DbSet<EventParticipantToParticipantLinker> EventParticipantLinks { get; set; }
// For System functionality
public DbSet<RegSysMessage> RegSysMessages { get; set; }
public DbSet<Transaction> Transactions { get; set; }
// For Trading Post functionality
public DbSet<Category> Categories { get; set; }
public DbSet<Product> Products { get; set; }
public DbSet<CartItem> ShoppingCartItems { get; set; }
public DbSet<ProductInventory> ProductInventories { get; set; }
public DbSet<TradingPost> TradingPosts { get; set; }
public DbSet<Order> Orders { get; set; }
public DbSet<OrderDetail> OrderDetails { get; set; }
public DbSet<ProductSale> ProductSales { get; set; }
public DbSet<SpecialOffer> SpecialOffers { get; set; }
}
Вы пробовали какие-либо решения? Возможно, здесь [здесь] (http://stackoverflow.com/questions/25366807/the-model-backing-the-context-has-changed-since-the-database-was-created) или [здесь] (http: //stackoverflow.com/questions/28747581/entity-framework-telling-me-the-model-backing-the-context-has-changed) –
@MarkC. Я смотрел на [MigrateDatabaseToLatestVersion Initializer] (https://msdn.microsoft.com/en-us/data/jj591621.aspx#initializer), поскольку он выглядел так, как будто он делает то, что мне нужно, хотя я просто пытаюсь понять как использовать его прямо сейчас. –
Кажется, что вы не запустили команду «Обновить-База данных», если вы делаете Code First. Кроме того, включены ли миграции? –