如果我有一个返回IQueryable结果集的页面类,如:
protected virtual IQueryable<EntityResult> GetEntities(ETBDataContext pContext)
{
return from e in pContext.Entities
where e.SectionId == SectionId && e.StatusCode == "Published"
orderby e.PublishDate descending
select new EntityResult
{
EntityId = e.Id,
Excerpt = e.Excerpt,
Name = e.Name,
PublishDate = e.PublishDate,
ShortDescription = e.ShortDescription
};
}
如果我在继承的类中调用此方法,如何清除select并获取ShortDescription?
public void IQueryable<EntityResult> GetResult(ETBDataContext pContext)
{
IQueryable<EntityResult> pQuery = base.GetEntities(pContext);
//right here: how can I just return the ShortDescription Only?
return pQuery;
}
我使用默认的GetEntities()为默认查询执行标准选择操作,但在某些调用中,我想获得我需要的特定数据。
这可能吗?还有其他方法吗?在此先感谢!!
答案 0 :(得分:3)
你可以尝试
pQuery = pQuery.Select(e => new EntityResult {
ShortDescription = e.ShortDescription
});
我很确定这不会选择其他列。