如何使用C#从MongoDB检索和显示数据时排除_id字段

时间:2014-09-23 12:36:12

标签: c# mongodb mongodb-.net-driver mongodb-query

如何从C#中返回的字段集中排除_id字段,此网站上有一些帖子提到.include()和.exclude()方法,但这些方法在我的情况下不存在。< / p>

下面的代码是&#39; secondary&#39;是外部文档中的一个字段,它是一个数组和&#39; .amount&#39;是嵌入在&#39; secondary&#39;中的字段。数组(如嵌套文档)。有人可以帮我解决这个问题..!

 var fields = "secondary.amount";
        foreach (var document in collection.FindAllAs<BsonDocument>().SetFields(fields))
        {
            foreach (string name in document.Names)
            {
                BsonElement element = document.GetElement(name);                  
                Console.WriteLine("{0}", element.Value);
            }
        }

1 个答案:

答案 0 :(得分:1)

IncludeExclude方法可用,它们不容易找到,因为它们在单独的Fields构建器类中关闭:

using MongoDB.Driver.Builders; // Make Fields class accessible

var fields = "secondary.amount";
foreach (var document in collection.FindAllAs<BsonDocument>()
    .SetFields(Fields.Include(fields).Exclude("_id"))
{
    foreach (string name in document.Names)
    {
        BsonElement element = document.GetElement(name);                  
        Console.WriteLine("{0}", element.Value);
    }
}