我有一个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