Esiste un modo in Entity Framework per utilizzare un tipo complesso come chiave per un'entità e mappare al database esistente?
Diciamo che ho un database come questo:
create table people ( id int, name nvarchar(128) )
e mi piacerebbe mappare la seguente struttura di classe C # a questa tabella:
class PersonId
{
public int Id { get; set; }
}
class Person
{
public PersonId Id { get; set; }
public string Name { get; set; }
}
Come potrei farlo?
-Dmytro
Qual è il punto di avere una classe PersonId
separata se si ha solo sulla proprietà? sembra una cattiva pratica per me.
Forse tutto ciò di cui hai bisogno è una chiave composita. Per utilizzare in EF puoi dichiarare la tua classe in questo modo:
[Key, Column(Order = 0)]
public int column1 { get; set; }
[Key, Column(Order = 1)]
public int column2 { get; set; }