我有OData Web API + EF应用程序,我需要在嵌套的位置修改一些查询。如果查询如下:
SomeEntity?$filter=Name eq 'Y'&$Expand=Children($filter=Name eq 'x')
它以我不能做的方式嵌套LINQ表达式 IQueryable.Where(y =>附加过滤器)仅适用于SomeEntity而不适用于Children实体。
我有ExpressionVisitor为个别Where LINQ func返回修改过的Expression但IQueryable.Expression是只读的,我无法覆盖旧的Expression。
答案 0 :(得分:0)
我发现我能做到 IQueryable.Provider.CreateQuery(我的新表达式)