Как отфильтровать таблицу на основе принадлежности к списку - PullRequest
1 голос
/ 19 июня 2019

Я пытаюсь отфильтровать таблицу, поскольку предикат является дополнением к списку в Код .Можно ли это сделать из кода и без необходимости добавления списка в таблицу RethinkDB?

var list=new List<int>{1,2,3};
var filter=r.Db("someDb").Table("SomeTable").Filter(x=>list.Contains(x("field")));

Как вы можете видеть, у меня есть список в c#, но я не могу как-то представить его какПредикат в Reql синтаксис. Есть ли в любом случае, чтобы сделать это?

Или я могу каким-то образом создать выражение, используя for как var basicExpression;

foreach(var item in list)
{
  basicExpression.Or(x("something").Eq(item));
}

И в конце сделатьодно большое выражение?

1 Ответ

1 голос
/ 20 июня 2019

В драйвере javascript он должен быть таким:

r.db("someDb").table('SomeTable').filter(function (x) {
    return r.expr(['1', '2', '3']).contains(x('field'))
})

Однако в драйвере .net я не уверен, может быть:

var filter = r.Db("someDb").Table("SomeTable")
        .Filter(x => R.Expr(new[]{'1','2','3'}).Contains(x("field")));
...