Kod EF5 Najpierw - zmiana typu kolumny z migracjami
Jestem nowicjuszem w Kodeksie EF5 Najpierw pracuję nad proof-of-concept przed rozpoczęciem projektu w pracy.
Początkowo stworzyłem model, który wyglądał podobnie
public class Person {
public int Id { get; set; }
public string FirstName { get; set;}
public string Surname {get;set;}
public string Location {get;set;}
}
Dodałem kilka rekordów za pomocą małej aplikacji MVC, którą utknąłem na szczycie.
Teraz chcę zmienić kolumnę Lokalizacja na wyliczenie, na przykład:
public class Person {
public int Id { get; set; }
public string FirstName { get; set;}
public string Surname {get;set;}
public Locations Location {get;set;}
}
public enum Locations {
London = 1,
Edinburgh = 2,
Cardiff = 3
}
Po dodaniu nowej migracji otrzymuję:
AlterColumn("dbo.People", "Location", c => c.Int(nullable: false));
ale po uruchomieniu update-database pojawia się błąd
Conversion failed when converting the nvarchar value 'London' to data type int.
Czy w migracji istnieje sposób na obcięcie tabeli przed uruchomieniem instrukcji alter?
Wiem, że mogę otworzyć bazę danych i ręcznie to zrobić, ale czy jest mądrzejszy sposób?