在服务器端获取 BreezeJS ODATA 查询参数以在查询期间更新实体

Get BreezeJS ODATA query parameters on server side to update entity during query

如何在 Brezze WebApi 控制器中获取 OData 查询参数的句柄?

我有一个端点,一次只能查询一个实体。控制器只是调用一个 returns a context.Set().AsQueryable();

的存储库

我希望能够从参数中获取实体 ID 并在查询响应之前更新(普通 EF)计数 属性。

谢谢

我找到了我需要的东西。

通过向端点添加一个 ODataQueryOptions<T> odataQueryOptions 参数,我能够访问 OData 查询参数并通过获取此 属性:

获得我需要的 ID
var where = odataQueryOptions.RawValues.Filter;

我的过滤值如下所示:Id eq 'dd3d6cb2-bc7a-467e-9730-c43c333b6fda'

编辑: 如果您在 breeze 查询对象上使用 .withParameters(),则可以将其他参数传递给 end-point,而无需费心处理 OData。