пожалуйста, обратите внимание на следующую Pocos:Точной цели навигационных свойств Entity Framework
public class Country
{
[Key]
public Guid ID { get; set; }
[Required]
public virtual Currency Currency { get; set; }
}
public class Currency1
{
[Key]
public Guid ID { get; set; }
public virtual ICollection<Country> Countries { get; set; }
}
public class Currency2
{
[Key]
public Guid ID { get; set; }
}
Я не совсем уверен, что мне нужно навигационные свойства, как в ICollection в Валюта1 для. Если дело доходит до EF CodeFirst, я не вижу различий в структуре базы данных. Таблицы Currency1 и Currency2 выглядят почти одинаково для меня. Итак, почему и когда имеет смысл добавить это дополнительное свойство?
Конечно, просто думая о POCOs. Я понимаю, что я не могу получить доступ к каким-либо странам из объекта Currency2. Например:
var a = currency1.Countries; // works fine
var b = currency2.Countries; // does not even compile
Но разве это единственное различие? Другими словами: Если мне не нужно обращаться к странам из объекта Currency2, нет необходимости добавлять соответствующее свойство навигации в класс Currency2 для целей EF? Вид путается здесь ...
Спасибо, Ладислав, это именно то, что я думал. Еще раз спасибо! – Ingmar