Sql 如何使用简单Odata筛选器比较列表中的值?
如何编写将Mylist值与MyKeyTable值进行比较的筛选器 我尝试了以下方法:Sql 如何使用简单Odata筛选器比较列表中的值?,sql,linq,odata,Sql,Linq,Odata,如何编写将Mylist值与MyKeyTable值进行比较的筛选器 我尝试了以下方法: List<string> Mylist = new List<string>(); Mylist.Add("Welcome"); Mylist.Add("Hello"); var output = await client.For<MyKeyTable>() //this is wrong I knew I need t
List<string> Mylist = new List<string>();
Mylist.Add("Welcome");
Mylist.Add("Hello");
var output = await client.For<MyKeyTable>()
//this is wrong I knew I need to correct this
.Filter(Mylist.Contains(x=>x.Key))
.FindEntriesAsync();
List Mylist=new List();
Mylist.Add(“欢迎”);
Mylist.Add(“你好”);
var output=wait client.For()
//这是错误的我知道我需要纠正这一点
.Filter(Mylist.Contains(x=>x.Key))
.FindEntriesAsync();
因此,output
将附带所有键值匹配的值,如welcome
和hello
提前谢谢。完成了我使用自定义表达式进行了尝试
ParameterExpression pe = Expression.Parameter(typeof(MyTableClass), "entity");
Expression expression = null;
Expression predicateBody = null;
Expression leftExpression = Expression.Property(pe, "Key");
Expression rightExpression = Expression.Constant("Welcome");
expression = Expression.Equal(leftExpression, rightExpression);
predicateBody = predicateBody == null
? expression
: Expression.OrElse(predicateBody, expression);