以下のコードを考えてみましょう。CreateOrAddToLists()メソッドをループで呼び出す必要があります。最初にメソッドが 2 つのリストcasedata.Casesと呼ばれ、 casedata.Documentsnull になるため、次のように割り当てるcasesことで入力できます。casedata.Cases
casedata.Cases = cases;
CreateOrAddToLists() リストへの後続の呼び出しではcasedata.Cases、casedata.Documentsnull にはならず、AddRange() を使用してリストに新しいデータを追加できます。
casedata.Cases.AddRange(cases);
var casedata = new CaseData(); //contains lists to get populated
private void CreateOrAddToLists()
{
var cases = new List<Case>(); //gets data with from database
var documents = new List<Document>(); //gets data with from database
if (casedata.Cases == null)
{
casedata.Cases = cases;
}
else
{
casedata.Cases.AddRange(cases);
}
if (casedata.Documents == null)
{
casedata.Documents = documents;
}
else
{
casedata.Documents.AddRange(documents);
}
}
前にヌルチェックを行うためのより良い、またはよりきちんとした方法はありますAddRangeか? コード行でそれを行うことはできますか?