如何在WCF QueryInterceptor中访问系统查询

时间:2012-02-25 03:18:02

标签: wcf-security wcf-data-services interceptor

例如,这是我的URI: /MyService.svc/Products? $ filter = ID gt 5和Price eq 500
Query Intercaeptor可以获得ID和价格的价值吗?

我尝试使用 HttpContext.Current.Request.QueryString 来获取$ filter的值并编写解析器,但这会伤害我的大脑!

1 个答案:

答案 0 :(得分:0)

您可以做的是返回一个表达式,询问每个产品。如下所示:

(产品)=> ReportProductForTheCurrentUser(产物)。

问题很可能是,您的查询提供程序将无法处理这样的表达式。例如EF提供商不会。但是,如果您正在使用LINQ to Objects,或者其他可能的东西。

无论如何,这是查询拦截器打算工作的方式。