Я использую следующий код для модели основного вида, которая содержит два списка данных,
namespace trsDatabase.Models
{
public class masterViewModel
{
public IEnumerable <Customer> Customers { get; set; }
public IEnumerable <CustomerSite> CustomerSites { get; set; }
}
}
Я использую следующий код для передачи veiwmodel в представление,
public ViewResult Index()
{
masterViewModel sitesModel = new masterViewModel();
return View(sitesModel);
}
Тогда, на мой взгляд, у меня есть следующее:
@model IEnumerable<trsDatabase.Models.masterViewModel>
foreach (var site in customer.CustomerSites)
{
foreach (var cust in customer.Customers)
{
<tr>
<td>
@cust.CustomerName
</td>
<td>
@site.UnitNo
</td>
, используя вышеуказанный код, я могу получить доступ ко всем свойствам из двух списков в модели представления, однако, когда я перехожу к представлению, я получаюошибка, поскольку представление ожидает IEnumerable.Если я изменю объявление, чтобы просто передать viewmodel
@model trsDatabase.Models.masterViewModel
, оператор foreach
не будет работать, он выдаст эту ошибку
Элемент модели, переданный в словарь:типа 'trsDatabase.Models.masterViewModel', но для этого словаря требуется элемент модели типа 'System.Collections.Generic.IEnumerable`1 [trsDatabase.Models.masterViewModel]'.
Может кто-нибудь предложитьЛюбой совет или указать мне правильное направление для решения этой проблемы, возможно ли сделать мою модель представления IEnumerable?