[英]How to create IQueryable results using Entity Framework complex types
我有以下服務操作,其中 DataDTO 是復雜類型(通過實體框架模型瀏覽器添加):
[WebGet]
public IQueryable<DataDTO> GetInformation(string id)
{
var resultList= (from data in context.Data
where data.ID ==id
select new
{
DataID = data.ID,
Name = data.Name,
Group = data.Group
})
.ToList()
.Select(item =>
new DataDTO
{
ID = item.ID,
Name= item.Name,
Group = item.Group
});
return resultList.AsQueryable();
}
當我使用客戶端訪問它時,出現異常:
查詢選項 $orderby、$inlinecount、$skip 和 $top 不能應用於請求的資源。
所以添加 AsQueryable 並不能解決問題。
考慮到復雜類型的使用,我應該如何修改查詢以返回 IQueryable?
解決方案 1:在服務操作方法上添加 [SingleResult] 屬性,讓 WCF DS 知道 IQueryable 只會返回單個值
解決方案 2:WCF OData 服務方法不支持查詢選項。嘗試通過將 DataSource.paginate 選項設置為 false 來禁用數據源的分頁
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.