我使用breeze来允许客户端查询。但是,我不认为我的问题是微风化的。我认为它是特定于WebApi的,或者可能是特定于实体框架的。我只知道自己想要做什么。
我希望在将查询结果发送到客户端之前检查它。具体来说,我希望能够通过扩展查询以包含与不受限制的数据相关联的受限数据来处理查询受限数据的恶意客户端。不受限制的实体类型的查询入口点当然是不受限制的。即使受限实体类型没有查询入口点,恶意客户端也可以通过不受限制的实体类型查询它们。
但是,如何注入我的支票代码?
我的服务代码只返回IQueryable。 Breeze增强了IQueryable以包含odata查询。然后,某些东西执行查询并将结果序列化到客户端。我认为序列化程序本身可能会/导致查询执行。查询执行后如何检查生成的实体对象...在发送给客户端之前?