ASP.NET MVC 2 Controller + View + Multiple Models + LINQ 方法

 
ASP.NET MVC 2 Controller + View + Multiple Models + LINQ 方法
 

   HomeController.cs
 
   [HandleError]
   public class HomeController : Controller
   {
      CourseMVCEntities entity;
 
      public ActionResult Index()
      {
         … …
 
         entity = new SystematicMVCEntities();
 
         var dataModel = new CourseDetail()
         {
            coursecategory = entity.CourseCategories.ToList(),
            course = entity.Courses.ToList()
         };
 
         return View(dataModel);
      }
 
      … …
 
      public class CourseDetail
      {
         public IEnumerable<CourseCategory> coursecategory{get;set;}
         public IEnumerable<Course> course{get;set;}
      }
   }
 

 

   Index.aspx
 
   <%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master"
   Inherits="System.Web.Mvc.ViewPage<MVCApplication.Controllers.HomeController.CourseDetail>" %>
 
   … …
 
   <% foreach (var catitem in Model.coursecategory) { %>
      <%=catitem.CourseCategoryName%><br />
      <% foreach (var courseitem in Model.course.Where(item => item.CourseCategory == catitem.CourseCategoryID)) { %>
         <%=courseitem.CourseName%><br />
      <% } %>
      <br />
   <% } %>