【发布时间】:2015-12-30 10:53:13
【问题描述】:
我有一个名为 Tag 的类。每个标签都有一些 News , Article 和 `Poll'。我想要获取所有具有标签的相关帖子。
为此,我使用此查询:
public Tag Get(string tagName, int page, int recordsPerPage = 10)
{
int skip = page * recordsPerPage;
return
_tags.Where(tag => tag.Title.ToLower() == tagName.ToLower()).Include(row => row.Articles
.OrderByDescending(n => n.Code).Skip(skip).Take(recordsPerPage).ToList())
.Include(row => row.News.AsQueryable()).OrderBy(news => news.Code).Skip(skip).Take(recordsPerPage)
.Include(row => row.Polls).OrderByDescending(poll => poll.Code).Skip(skip).Take(recordsPerPage).FirstOrDefault();
}
但是当我运行项目时,我得到了这个错误:
包含路径表达式必须引用在类型上定义的导航属性。对引用导航属性使用虚线路径,对集合导航属性使用 Select 运算符。
【问题讨论】:
-
你只想要一个标签,为什么要调用Skip and Take方法?
-
因为我按一个标签搜索,我应该得到 All Related
News,Articlrs与该标签。而且我第一次不显示所有项目我每页加载 10 条记录 -
这个问题解决了吗?我遇到了完全相同的问题。
标签: c# linq c#-4.0 entity-framework-4