如何从存储过程中使用OData?
我已经定义了一个这样的控制器
public class ReportOdataController : ODataController
{
private DB_PLBEntities db = new DB_PLBEntities();
[EnableQuery]
public IQueryable<Stp_Select_Report_Result> GetReportOdata()
{
return db.Stp_Select_Report(null).AsQueryable();
}
}
但是当我通过uri /odata/ReportOdata?$inlinecount=allpages
调用它时会抛出以下错误:
查询的结果不能多次枚举。
我是编程新手,所以我不明白错误发生的原因或解决方法?
答案 0 :(得分:1)
只需更改(假设db
(DB_PLBEntities
)是List<T>
):
return db.Stp_Select_Report(null).AsQueryable();
致:
return db.Stp_Select_Report(null).AsQueryable().ToList();
希望这会有所帮助:)