我确信我只是在考虑这个问题,但是我正在努力获得一份清单,除了一件事以外,一切都有效。而且我知道为什么要这样做,它会获得分配给循环外部的foreach
的最后一项并返回该项。但是我想要归还他们所有人。
我做错了什么?
var cheeses = _repository.GetAllYearSetupIds();
var gouda = new CollectionsManagementViewModel();
var yearSetupId = 0;
foreach(var cheddar in cheeses)
{
yearSetupId = cheddar.YearSetupId;
gouda = _repository.GetOverdueBalances(page, pageLength, yearSetupId, balancefilter, sort, direction == Constants.ascending, spreadsheetType);
gouda.Title = title + " Management";
}
return View("CollectionsManagement", gouda);
答案 0 :(得分:3)
目前,您正在循环中的每次迭代更新名为CollectionsManagementViewModel
的{{1}}的单个实例。循环gouda
将具有上一次迭代的值。
您应该在每次迭代时创建gouda
的新实例,并将此实例添加到视图模型列表中。当然,命名应该是有意义的:
CollectionsManagementViewModel
答案 1 :(得分:0)
您好希望以下代码可能对您有所帮助
var cheeses = _repository.GetAllYearSetupIds();
var lstgouda = new List<CollectionsManagementViewModel>(); //make a list
var yearSetupId = 0;
foreach(var cheddar in cheeses)
{
var gouda = new CollectionsManagementViewModel();
yearSetupId = cheddar.YearSetupId;
gouda = _repository.GetOverdueBalances(page, pageLength, yearSetupId, balancefilter, sort, direction == Constants.ascending, spreadsheetType);
gouda.Title = title + " Management";
lstgouda.add(gouda); //add it to list
}
return View("CollectionsManagement", lstgouda);
由于 KARTHIK