Здравствуйте, α, Вы писали:
α>Пусть у нас есть такая простая структура классов
α>α>public class Порода
α>{
α> [Key]
α> public string Название {get;set;}
α>}
α>public class Собака
α>{
α> [Key]
α> public string Кличка {get;set;}
α> public Порода Порода {get;set;}
α>}
α>
α>Дальше:
α>α>var шарик = new Собака { Кличка = "Шарик", Порода = new Порода { "Овчарка" } };
α>var тузик = new Собака { Кличка = "Тузик", Порода = new Порода { "Овчарка" } };
α>context.Собаки.Add(шарик);
α>context.Собаки.Add(тузик);
α>context.SaveChanges();
α>
α>В этом примере в контекст добавляются две собаки одной породы, при этом название породы — первичный ключ.
Тогда пиши так:
public class Порода
{
[Key]
public string Название {get;set;}
}
public class Собака
{
[Key]
public string Кличка {get;set;}
public Порода Порода {get;set;}
public string ПородаИд {get;set;}
}
var шарик = new Собака { Кличка = "Шарик", ПородаИд = "Овчарка" };
var тузик = new Собака { Кличка = "Тузик", ПородаИд = "Овчарка" };
context.Собаки.Add(шарик);
context.Собаки.Add(тузик);
context.SaveChanges();
И настраивай мэпинг чтобы
ПородаИд был внешним ключом для
Порода.