Linq 来自bson的MongoDB返回列表
在下面的代码中,我正在查询我的数据库以查找specifik\u id,该部分工作正常。现在的问题是,我需要以某种方式在wpf数据网格中返回结果。我通常使用列表和字典来处理这类事情,但这在这里不起作用Linq 来自bson的MongoDB返回列表,linq,mongodb,mongodb-.net-driver,bson,Linq,Mongodb,Mongodb .net Driver,Bson,在下面的代码中,我正在查询我的数据库以查找specifik\u id,该部分工作正常。现在的问题是,我需要以某种方式在wpf数据网格中返回结果。我通常使用列表和字典来处理这类事情,但这在这里不起作用 public List<MongoDBModel> MongoDBMeterInfo() { var connectionString = "mongodb://localhost"; var mongoClient = n
public List<MongoDBModel> MongoDBMeterInfo()
{
var connectionString = "mongodb://localhost";
var mongoClient = new MongoClient(connectionString);
var mongoServer = mongoClient.GetServer();
var databaseName = "PointToPoint";
var db = mongoServer.GetDatabase(databaseName);
var mongodb = db.GetCollection<MongoDBModel>("OCS.MeterEntity");
var mongodbQuery = Query<MongoDBModel>.EQ(x => x._id, CurrentMeter.MeterUID);
var found = mongodb.FindOne(mongodbQuery);
}
[BsonIgnoreExtraElements]
public class MongoDBModel
{
[BsonElement("_id")]
public string _id { get; set; }
[BsonElement("EncryptionKey")]
public string EncryptionKey {get; set;}
[BsonElement("DataTemplateKey")]
public string DataTemplateKey { get; set; }
[BsonElement("LoggerReadsPerDay")]
public Int64 LoggerReadsPerDay { get; set; }
[BsonElement("ListType")]
public int ListType { get; set; }
[BsonElement("IpAddress")]
public string IpAddress { get; set; }
[BsonElement("ReadMode")]
public Boolean ReadMode { get; set; }
[BsonElement("DefaultStartTimeStampUtc")]
public string DefaultStartTimeStampUtc { get; set; }
[BsonElement("LastSetTime")]
public DateTime LastSetTime { get; set; }
[BsonElement("LastReadGSMdata")]
public DateTime LastReadGSMdata { get; set; }
[BsonElement("DialBackPort")]
public int DialBackPort { get; set; }
[BsonElement("CID")]
public int CID { get; set; }
[BsonElement("ActiveFirmwareUpgrade")]
public string ActiveFirmwareUpgrade { get; set; }
[BsonElement("QueuedFirmwareUpgrade")]
public string QueuedFirmwareUpgrade { get; set; }
[BsonElement("DeviceAcceptedFirmwareActivationMessageOnLastConnect")]
public Boolean DeviceAcceptedFirmwareActivationMessageOnLastConnect { get; set; }
[BsonElement("WasConnectionLostLastTime")]
public Boolean WasConnectionLostLastTime { get; set; }
}
public List MongoDBMeterInfo()
{
变量连接字符串=”mongodb://localhost";
var mongoClient=新的mongoClient(connectionString);
var mongoServer=mongoClient.GetServer();
var databaseName=“PointToPoint”;
var db=mongoServer.GetDatabase(databaseName);
var mongodb=db.GetCollection(“OCS.MeterEntity”);
var mongodbQuery=Query.EQ(x=>x.\u id,CurrentMeter.MeterUID);
var found=mongodb.FindOne(mongodbQuery);
}
[BsonIgnoreExtraElements]
公共类MongoDBModel
{
[b单一元素(“_id”)]
公共字符串_id{get;set;}
[BsonElement(“加密密钥”)]
公共字符串加密密钥{get;set;}
[BSoneElement(“DataTemplateKey”)]
公共字符串DataTemplateKey{get;set;}
[BsonElement(“LoggerReadsPerDay”)]
公共Int64 LoggerReadsPerDay{get;set;}
[b单一元素(“列表类型”)]
公共int列表类型{get;set;}
[b单一元素(“IP地址”)]
公共字符串IpAddress{get;set;}
[b单一元素(“读取模式”)]
公共布尔读取模式{get;set;}
[BsonElement(“DefaultStartTimeStampUtc”)]
公共字符串DefaultStartTimeStampUtc{get;set;}
[BsonElement(“LastSetTime”)]
公共日期时间LastSetTime{get;set;}
[BsonElement(“LastReadGSMdata”)]
公共日期时间LastReadGSMdata{get;set;}
[BsonElement(“回拨端口”)]
public int DialBackPort{get;set;}
[b单一元素(“CID”)]
公共int-CID{get;set;}
[b单一元素(“ActiveFirmwareUpgrade”)]
公共字符串ActiveFirmwareUpgrade{get;set;}
[BsonElement(“QueuedFirmwareUpgrade”)]
公共字符串QueuedFirmwareUpgrade{get;set;}
[BSoneElement(“DeviceAcceptedFirmwareActivationMessageOnLastConnect”)]
公共布尔设备AcceptedFileWareActivationMessageOnLastConnect{get;set;}
[b单一元素(“WasConnectionLostLastTime”)]
公共布尔值WasConnectionLostLastTime{get;set;}
}
我该怎么做才能让它工作呢?:) 另一方面,我希望这不是“生产”代码——也就是说,每次调用该方法时,您都不会创建mongo客户端,是吗?我是否遗漏了一些东西。。。您正在返回一个列表,但正在查询FindOne(在id上)