2016-03-27 5 views

cevap

2

Bu nedenle, tam bir Person sınıfı yapısına sahip değilim, sorgu için genel BsonDocument kullanıyorum. Önümüzdeki doğrultusunda Filter.In operatöre kimlikleri listesini geçiyorum

var client = new MongoClient("mongodb://localhost:27017"); 
var database = client.GetDatabase("database"); 
var collection = database.GetCollection<BsonDocument>("collection"); 

Not: En iyi bahis $in veya In operator

deneyin kullanılmasıdır. Kimliği aralığında 0,1,2,3

olduğunu hepsi kişiyi tutmak gerekir

var filter = Builders<BsonDocument>.Filter.In("PersonID", new List<int>() {0,1,2,3}); 
var result = collection.FindSync(filter).ToList(); 

Sonucu

0

list.Where deneyin (x => x.PersonID == MyPerson.ID)

Sen eklemeniz gerekir

Bu sözdizimini kullanabilmek için System.Linq'e bir başvuru: Temel olarak, bunun anlamı "Koleksiyonumdaki tüm nesneler olsa da, her birini" x "olarak adlandırıyorum, ve ben c'ye gidiyorum. PersonID özelliğini her değere göre kendiminkine göre işaretleyin. "Bu Lambda ifadeleri, kodun düzenlenmesi için çok yardımcı olabilir!