在特定的情況下返回非IQueryable的價值我在寫這個方法通過類別ID返回一個帖子:通過LINQ
public Post GetPostByCategory(Guid categoryId)
{
var query= _siteContext.Posts.Where(p => p.Category.Id == categoryId)
.OrderByDescending(p => p.CreationDate);
return query;//Error
}
我只是想通過一個類型後的返回查詢,查詢必須, 我能做什麼 ??
我不希望返回後的名單像這樣
public IList<Post> GetPostByCategory(Guid categoryId)
{
var query= _siteContext.Posts.Where(p => p.Category.Id == categoryId)
.OrderByDescending(p => p.CreationDate);
return query.tolist();
}
我已經somthine之前通過NHibernate的做這樣的:
public int TotalPostsForCategory(string categorySlug)
{
return _session.Query<Post>()
.Where(p => p.Published && p.Category.UrlSlug.Equals(categorySlug))
.Count();
}
我怎樣才能做到這一點與實體框架? ??
不會使用更好'FirstOrDefault'或'SingleOrDefault',所以你不會拋出'ArgumentNullException'或'InvalidOperationException'? – 2013-04-30 12:06:19
這取決於用例,並且你是否除了null – Xharze 2013-04-30 12:47:15
啊,那麼你的return'object'應該是'Nullable'。 –
2013-04-30 12:51:35