0
我正在學EF如此道歉,如果這已被回答一些其他地方。我找不到解決方案。我正在使用Two Tracked Queries,因爲我不能使用Include,因爲它不支持條件。所以,我的代碼如下:實體框架4.1兩個跟蹤查詢
List<int> CategoryIDs = _categoryIDs.Split(',').Select(t => int.Parse(t)).ToList();
我的模型:
public class Genre
{
public int GenreID { get; set; }
public string Name { get; set; }
public string iconURL{ get; set; }
public string Description { get; set; }
public int DisplaySequence { get; set; }
public IList<Category> Categories { get; set;
}
public class Category
{
public int CategoryId { get; set; }
public int GenreID { get; set; }
public string CategoryName { get; set; }
public virtual Genre Genre { get; set; }
}
public class SubCategory
{
public int SubCategoryID { get; set; }
public int CategoryID { get; set; }
public string SubCategoryName { get; set; }
public virtual Category Category { get; set; }
}
然後,我有我的視圖模型:
public class HomeIndexData
{
public IEnumerable<Genre> Genres { get; set; }
public IEnumerable<Category> Categories { get; set; }
public IEnumerable<SubCategory> SubCategories { get; set; }
}
然後我試圖視圖模型回到我的指數:
public ActionResult Index()
{
var genres = db.Genres.ToList().OrderBy(g => g.DisplaySequence);
var categories = db.Categories.Include(i => i.SubCategories)
.Where(i => CategoryIDs.Contains(i.CategoryId));
foreach (var category in categories)
{
};
HomeIndexData viewModel = new HomeIndexData
{
Genres = genres
};
return View(viewModel);
}
它返回結果bu我也想過濾SubCategories。如何將WHERE條件替換爲.Include(i => i.SubCategories)。
請注意我想要返回匿名類型,這就是爲什麼我是兩個跟蹤查詢。
在此先感謝。
如果你分享你的模型,你將會獲得更多的關注。類別和子類別是否屬於同一類型?換句話說,這是自引用表嗎? – 2013-04-05 13:03:48
感謝您的回覆。我也分享了我的模型。任何關於如何將條件放在子類別上的想法? – SAF 2013-04-05 13:45:49
你期待什麼回報? – Robert 2013-04-05 14:15:36