Railsの理解にもつながりそうな気配。
LINQで引っ張ってくるとことろか、気持ちよすぎ。
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using System.Web.Mvc.Ajax; using MVC_Chirashi1.Models; namespace MVC_Chirashi1.Controllers { public class CategoryController : Controller { /// <summary> /// カテゴリ一覧の表示 /// </summary> /// <returns>カテゴリ一覧</returns> public ActionResult List() { CategoryDataContext data = new CategoriesDataContext(); var categories = from category in data.Category select category; return View(categories.ToList()); } /// <summary> /// カテゴリIdから子カテゴリ、そのカテゴリに所属する企業の列挙 /// </summary> /// <param name="Id">Category-Id</param> /// <returns>子カテゴリ一覧</returns> public ActionResult Detail( int Id ) { CategoryDataContext data = new CategoriesDataContext(); var childCategories = from childCategory in data.ChildCategory where childCategory.CtgId == Id select childCategory; CompanyDataContext cmpData = new CompanyDataContext(); var companies = from cmp in cmpData.Company where cmp.CtgId == Id select cmp; ViewData["cmps"] = companies; return View(childCategories.ToList()); } } }
追記
ViewData["cmps"] = companies;
一度companiesにものが入ると、その後空でも入ったままになってしまう。ううむ。
追記2
解決。MasterPageで列挙に使ってる変数と名前がかぶってた。これは気をつけないと。