【发布时间】:2021-03-22 13:17:38
【问题描述】:
我正在尝试使用 efcore 从 cosmos db 中查询数据。我想传递多个表达式来过滤记录。我的表情是这样的:
public void GetData(){
Expression<Func<MyEntity, bool>> val1 = _ => _.Id== 1234;
Expression<Func<MyEntity, bool>> val2 = _ => _.reviewer == "username";
var abc = Or(val1,val2);
dbcontext.GetItemAsync(abc);
}
private static Expression<Func<MyEntity, bool>>
Or(Expression<Func<MyEntity, bool>> expr1,
Expression<Func<MyEntity, bool>> expr2)
{
var body = Expression.OrElse(expr1.Body, expr2.Body);
return Expression.Lambda<Func<MyEntity, bool>>(body, expr1.Parameters[0]);
}
这样做时总是会抛出 _ 未定义的错误。 请帮忙。
【问题讨论】:
-
请正确格式化您的代码,以便于阅读 - 您发布的 sn-p 甚至无法编译(例如,因为在
GetData之后缺少())
标签: .net entity-framework .net-core azure-cosmosdb ef-core-3.0