Pracuję nad projektem korzystającym z MVC4 w Visual Studio 2012 i dodałem kolumnę w tabeli.Jak włączyć migrację, aby zaktualizować moją bazę danych w MVC4?
Teraz, gdy chcę debugować mój projekt, błąd mówi, aby użyć migracji do aktualizacji mojej bazy danych.
Co muszę zrobić?
I zostały poszukiwania dużo i znalazłem kilka metod, takich jak:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
Database.SetInitializer<ResTabelaIndex>(null);
}
ale nie wiem gdzie i jak zaimplementować to ... Próbowałem w app_start, global.asax etc ...
Co znalazłem, aby włączyć migracje bezpośrednio w konsoli z nugetu.
Ale nie mogę wykonać tej pracy.
Komendy używam:
Enable-Migrations -EnableAutomaticMigrations
==> consolse mówi, że więcej niż jeden kontekst został znaleziony. Aby włączyć używanie, Enable-Migrations -ContextTypeName NameOfTheNamespace.Models.DefaultConnection
Ale nie wiem, co to jest -ContextTypeName
, wiele próbowałem, ale nie mogłem zrozumieć.
My Model Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.Entity;
using System.Data.Entity.ModelConfiguration.Conventions;
using System.Data.Entity.Migrations;
using System.ComponentModel.DataAnnotations;
using System.Data.Entity.Infrastructure;
namespace Vista.Models
{
public class TabelaIndex
{
public int ID { get; set; }
public string n_empresa { get; set; }
public string titulo{ get; set; }
public string url { get; set; }
public string imagens { get; set; }
}
public class DefaultConnection : DbContext
{
public DbSet<TabelaIndex> ResTabelaIndex { get; set; }
}
}
FWIW, musiałem dodać " base.OnModelCreating (konstruktor); " do końca nadpisywania OnModelCreating w celu umożliwienia automatycznej migracji do pracy na moim serwerze produkcyjnym (przy użyciu EF 6). –