MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

qual é o mecanismo para realizar uma interseção em uma consulta Mongo Linq


Na sintaxe do MongoDB há um $in operador que funciona exatamente como intersect+any quando você deseja combinar um array na memória com outro array embutido em seu documento.

No driver MongoDB C# você pode usar AnyIn para aplicar esse operador para duas matrizes. Tentar:
db.col.save({ Collection: [1,2,3] })l

Então em C#:
var filterBuilder = Builders<YourModel>.Filter;
var inMemoryList = new List<int>() { 3, 4, 5 };

var result = Col.Find(filterBuilder.AnyIn(x => x.Collection, inMemoryList)).ToList();