使用c#

时间:2015-07-15 06:22:36

标签: c# mongodb

当前代码

MongoClient mc = new MongoClient(connectionString);
            MongoServer ms = mc.GetServer();
            MongoDatabase db = ms.GetDatabase("userDetails");
            MongoCollection<UserDetails> UserDetailcollection = db.GetCollection<UserDetails>("clnTemple");
            List<UserDetails> query = UserDetailcollection.AsQueryable<UserDetails>().Where<UserDetails>(tld => tld.Name != "x").ToList();

这将返回所需的结果

问题

无法使用此查询挑选所选字段

目前我必须定义一个包含文档中所有对象的类。但是,如果我从课程中删除某些字段,那么它就无法正常工作

例如, UserDetails类就像

 public class UserDetail
    {
        [BsonId]
        public String _id { get; set; }

        public String Name { get; set; }

      public string MobileNumber { get; set; }
    }

我想删除MobileNumber字段,然后抛出错误说

Element 'MobileNumber' does not match any field or property of class MongoDbCrud.UserDetail

1 个答案:

答案 0 :(得分:1)

我找到了解决方案 我在课程

上面添加了[BsonIgnoreExtraElements]

所以课程应该是这样的

[BsonIgnoreExtraElements]
 public class UserDetail
    {
        [BsonId]
        public String _id { get; set; }

        public String Name { get; set; }

      public string MobileNumber { get; set; }
    }