例如,这是我的URI: /MyService.svc/Products? $ filter = ID gt 5和Price eq 500
Query Intercaeptor可以获得ID和价格的价值吗?
我尝试使用 HttpContext.Current.Request.QueryString 来获取$ filter的值并编写解析器,但这会伤害我的大脑!
答案 0 :(得分:0)
您可以做的是返回一个表达式,询问每个产品。如下所示:
(产品)=> ReportProductForTheCurrentUser(产物)。
问题很可能是,您的查询提供程序将无法处理这样的表达式。例如EF提供商不会。但是,如果您正在使用LINQ to Objects,或者其他可能的东西。
无论如何,这是查询拦截器打算工作的方式。