0
問題出在代碼的'else'部分,其中變量'fields'接收文檔中的所有指定字段,但在將其轉換爲bson並返回bson時,出現錯誤如:無法在bson文檔的根級寫入數組。無法將MongoCursor轉換爲BsonDocument
public BsonDocument bsonReadDocument(string strDbName, string strCollectionName, IMongoQuery query, string[] includeFields = null)
{
BsonDocument bsonDoc = null;
MongoServer MdbServer = ConnectToServer();
if ((strDbName != "" || strDbName != null) && MdbServer.DatabaseExists(strDbName))
{
if ((strCollectionName != "" || strCollectionName != null) && MdbServer.GetDatabase(strDbName.ToLower()).CollectionExists(strCollectionName))
{
if (includeFields == null)
{
bsonDoc = MdbServer.GetDatabase(strDbName.ToLower()).GetCollection(strCollectionName.ToLower()).FindOne(query);
}
else
{
var fields = MdbServer.GetDatabase(strDbName.ToLower()).GetCollection(strCollectionName.ToLower()).Find(query).SetFields(Fields.Include(includeFields));
}
}
}
}
return bsonDoc;
}