とC#のプロパティ私のように定義されたプロパティを持っている...ハードコーディングされたゲッターとセッター
public List<Obj> Objs { get; set; }
は、getメソッドにいくつかのロジックを置くことですので、それはなります何かのように...
public List<Obj> Objs
{
get
{
if (Objs == null)
{
Objs = new List<Obj>();
}
if (Objs.Count < 1)
{
Objs.Add(new Obj());
}
return Objs;
}
set { Objs = value; }
}
これを行うと、関数がすべてのパスで再帰的であることがわかります。
プライベートバッキングフィールドを作成せずにこれを行う方法はありますか?
しないでください。http://msdn.microsoft.com/en-us/library/ms182327.aspx – SLaks
なぜバッキングフィールドではできませんか? – Default
彼らが働いているシステムを悪用することは、創造的な人々がどのようにしているか信じられないほどです。そして、幸運はあなたのために、コンパイラはそれ以外の質問はあなたがバッキングフィールドを使用してこの問題を解決しても、あなたがそれを行うべきではありません –