私は主にサービスを通じて構築されたPOCOクラスを持っています。私はいくつかの情報でサービスをヒットし、dtoを取り戻し、それを使用してオブジェクトの一部を構築します。私がやろうとしているのは、必要に応じてのみ満たされるように、いくつかの大きなプロパティを遅延ロードすることです。私はこれがそれを行う方法だと思いました:
private List<User> _directReports;
public List<User>DirectReports
{
get
{
if (this._directReports == null)
{
SetDirectReports();
}
return this._directReports;
}
private set
{
this._directReports = value;
}
}
private void SetDirectReports()
{
using (var client = new ADSClient())
{
this._directReports = client.GetDirectReports(this.Guid);
}
}
ここに問題があり、おそらく私は幽霊を追いかけていますが、デバッガーをステップスルーし、インスタンス化した後にオブジェクトの内臓を見ると、それらのフィールドには情報が含まれているはずであり、その段階ではなく、目的を完全に打ち負かします私がやろうとしていることの。だから私はこれを理解しようとしています、私はこれを間違っていますか?コンパイラは、私が考えていないポイントとしてgetメソッドを実行していますか?