общедоступное определение GetEnumerator в asp.net mvc пропавшие без вести?

Я должен вручную создать определение для GetEnumerator? Кажется, что это должно знать...

Я получаю следующую ошибку:

оператор foreach не может управлять на переменных типа 'MvcAppNorthwind. Модели. Продукт', потому что 'MvcAppNorthwind. Модели. Продукт' не содержит общедоступное определение для 'GetEnumerator'

Line 9:      <h2><%: ViewData["Message"] %></h2>
Line 10:     <ul>
Line 11:     <% foreach (MvcAppNorthwind.Models.Product p in ViewData.Model)  {   %>
Line 12:     <li><%= p.ProductName %></li>
Line 13:     <% } %>

В моем контроллере у меня есть этот код:

  NorthwindDataContext db = new NorthwindDataContext(); 

    ViewData["Message"] = "Welcome to ASP.NET MVC!";
    var products = from p in db.Products
                   select p; 


    return View(products);

Я изменил объявление, по моему мнению, как это, и теперь оно работает:

<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<IEnumerable<MvcAppNorthwind.Models.Product>>" %>

Но если Вы хотите отобразить или использовать данные из нескольких моделей в том же представлении? Как дела это затем?

5
задан marko 31 July 2010 в 13:48
поделиться