次のようにプロパティに virtual キーワードを使用する人を見てきました。
public class Client
{
public virtual int? Id { get; set; }
public virtual string Name { get; set; }
public virtual string Lastname { get; set; }
public virtual int? Age { get; set; }
public virtual ISet<Login> Logins { get; set; }
}
何かを仮想として宣言するときにわかっているのは、派生クラスでそれをオーバーライドできるということだけですが、プロパティでこのキーワードを使用する別の理由があるのでしょうか?.
例を挙げて説明できれば、物事が明確になるかもしれません。