Używam EF 6.0 kod najpierw, i mam ten podmiot:Entity Framework Change Primary Key Type
public class TrainingRespect
{
[Key]
public int RespectId { get; set; }
public DateTime? DateWhenRespected { get; set; }
#region
public string UserId { get; set; }
public User User { get; set; }
public Guid TrainingId { get; set; }
public Trening Training { get; set; }
#endregion
}
I chciałbym zmienić to klucz podstawowy (RespectId) od int do GUID/string/długie.
Jaki jest najłatwiejszy sposób robienia tego? Czy mogę po prostu zmienić typ i migracje EF zajmie się wszystkim, czy powinno to być zrobione w jakiś inny sposób?
Wygląda na to, że masz pomysł na coś, co możesz zrobić. Próbowałeś tego? Odpowiedź powinna brzmieć "tak". – JamesT
@JTolley Nie, ponieważ byłem w 99% pewien, że odpowiedź brzmi "nie". Miałem złe doświadczenia wcześniej ze starszymi wersjami EF z tym. W każdym razie po przeczytaniu twojego komentarza próbowałem zmienić go z int na long i string, i za każdym razem dostałem ten błąd: 'Tabele bez indeksu klastrowanego nie są obsługiwane w tej wersji SQL Server. Utwórz indeks klastrowy i spróbuj ponownie. Nie można usunąć ograniczenia. Zobacz poprzednie błędy. Instrukcja została zakończona. " – hyperN
Z której wersji programu SQL Server korzystasz? – JamesT