Sri*_*vas 0 asp.net odata asp.net-web-api asp.net-web-api2 queryinterceptor
OData 端点是使用 ASP.NET Web API 2.0 创建的
尝试在 ODataController 中创建一个查询拦截器,如下面的代码所示:
public class AVMItemController : ODataController
{
ADWAppContext sampleADW = new ADWAppContext("Server=XXX;Database=XXX;User ID=XXX;password=xxx;Trusted_Connection=false;Encrypt=true");
// GET: odata/AVM
[EnableQuery(PageSize=25)]
public IQueryable<ADWAppContext.AVMItem> GetAVMItems()
{
return sampleADW.AVMItems.AsQueryable<ADWAppContext.AVMItem>();
}
[QueryInterceptor("AVMItems")]
public Expression<Func<ADWAppContext.AVMItem, bool>> FilterAVMItems()
{
return avm => avm.avmId > 1000;
}
}
Run Code Online (Sandbox Code Playgroud)
所有 OData 查询的处理都没有考虑 Query Interceptor 中提到的谓词。我在查询拦截器方法中有一个从未命中的断点。
| 归档时间: |
|
| 查看次数: |
954 次 |
| 最近记录: |