Я знаю, что могу использовать виртуальное ключевое слово, чтобы сообщить платформе сущности, что дочерняя таблица должна быть загружена LAZY способом. а,
public class Person
{
public virtual string Name { get; set; }
public virtual int Age { get; set; }
public virtual History PastHistory { get; set; }
public virtual ICollection<Blog> Blogs { get;set; }
}
public class Blog
{
..... blah.. blah.... blah
}
public class History
{
.... blah blah blah
}
Теперь мой вопрос,
Поскольку история - это не коллекция, а отображение 1: 1 для другой сущности, я должен пометить историю как виртуальную, если я хочу загрузить историю ленивым способом?
Есть ли какая-либо выгода для маркировки простых свойств (то есть имени: string, Age: int) как виртуальных? В этот момент я пометил все свои простые свойства как виртуальные без видимой причины. Если кто-нибудь подтвердит мне, что маркировка простых свойств как виртуальных не имеет никакого эффекта в EF Code First, я сниму отметки, чтобы сделать мой POCO более понятным.
Спасибо.