このようにオブジェクトのコレクションをビューモデルに送信しています
コントローラ
SoundsViewModel model = new SoundsViewModel(sound, AllGroups());
ビューモデル
public SoundsViewModel(sound, List<LocationGroup> allGroups)
{
....
Groups = new List<SoundLocationGroupViewModel>();
if (allGroups !=null)
{
foreach (var item in allGroups)
{
var i = (from r in sound.LocationGroups where r.Id == item.Id select r).FirstOrDefault();
Groups.Add(new SoundLocationGroupViewModel() { LocationGroupId = item.Id, LocationGroupName = item.Name, IsInLocationGroup = (i != null) });
}
}
}
エラーメッセージは
Value cannot be null.
Parameter name: source
var i = (from r in sound.LocationGroups where r.Id == item.Id select r).FirstOrDefault();
明らかに、このメッセージは説明の状況では完璧で明確に見えますが、デバッグでは、ビューモデルで allGroups コレクションが読み込まれ、適切に受信されています。
明日の朝のコーヒーでこれを修正する方法のヒントを誰かが私に提案してくれれば、本当に感謝しています。
ありがとう
更新: 合格しました。
foreach (var item in allGroups)
{
if(sound.LocationGroups !=null)
{
var i = (from r in sound.LocationGroups where r.Id == item.Id select r).FirstOrDefault();
Groups.Add(new SoundLocationGroupViewModel() { LocationGroupId = item.Id, LocationGroupName = item.Name, IsInLocationGroup = (i != null) });
}
}