我怎樣才能結合BinaryExpression和Expression<Func<dynamic / T, bool>>?例如:void AddGlobalFilter<T>(Expression<Func<T, bool>> expr){ var parameter = Expression.Parameter(type, "t"); var member = Expression.Property(filter.Parameter, field); var constant = Expression.Constant(null); var body = Expression.Equal(member, constant); var combine = Expression.AndAlso(body, expr);}我正在嘗試為實體框架 (EF) 核心定義全局過濾器。問題是我必須手動組合多個過濾器。ModelBuilder如果模型實現了IDbDeleted接口,則可以添加一個過濾器。另一個可以為特定模型手動添加?;舅枷胧俏矣幸粋€所有表達式的列表,然后將它們組合起來:var expression = listExpressions.First();foreach (var second in listExpressions.Skip(1)){ expression = Expression.AndAlso(expression, second);}var lambdaExpression = Expression.Lambda(expression, parameter);modelBuilder.Entity(item.Key).HasQueryFilter(lambdaExpression);當然我得到錯誤(第一個來自Expression.Equal,第二個來自t => t...):過濾器表達式 't => t => (Not(t. ...
- 1 回答
- 0 關注
- 402 瀏覽
添加回答
舉報
0/150
提交
取消