我有一個Menu類,它有一個名爲WebPages的IQueryable屬性。在下面的語句中,我返回基於匹配的菜單項,但我需要包含Webpages屬性。這是我目前所擁有的。LINQ IQueryable幫助
var allCategories = Menu.All().Where(x => x.CategoryID == 4 && x.Visible)
我需要擴展它的網頁類檢查屬性,像這樣..
var allCategories = Menu.All().Where(x => x.CategoryID == 4 && x.Visible && x.WebPages.Roles.Contains(User.Identity.Name))
這不會編譯,但我希望你得到的JIST我試圖去做。
注意:網頁屬性是由PageID而不是CategoryID填充的,但不知道這是否有所不同?
以下是我的課程簡介。
public partial class Menu: IActiveRecord
{
public int ID {get; set;}
public int CategoryID {get;set;}
public bool Visible {get;set;}
public int PageID {get;set;}
public IQueryable<WebPage> WebPages
{
get
{
var repo=NorthCadburyWebsite.Models.WebPage.GetRepo();
return from items in repo.GetAll()
where items.ID == _PageID
select items;
}
}
}
public partial class WebPage: IActiveRecord
{
public int ID {get;set;}
public string Roles {get;set;}
}
您可以編輯您的問題以包含此信息,因爲它似乎是問題的更多細節而不是答案。 – CoderDennis 2009-06-24 19:11:54