簡體   English   中英

包含特定字段以使用 C# 從 MongoDB 獲取數據時出錯

[英]Getting a error while including particular field to get data from MongoDB using C#

我正在嘗試使用 Collecion.SetFields 方法設置特定字段,以使用 c# 從 MongoDB 獲取特定數據。 但它向我顯示錯誤:

“IFindFluent<BsonDocument, BsonDocument>”不包含“SetFields”的定義,也沒有可訪問的擴展方法“SetFields”接受類型的第一個參數。

這是我正在使用的代碼:

public MongoCursor<BsonDocument> GetRecordsAsynchronously(string runnumber, string fileType)
{
    var collection = Database.GetCollection<BsonDocument>(_collectionName);
    var bsonQueryDocument = new QueryDocument(new BsonDocument() { { "RunNumber", runnumber }, { "FileType", fileType } });
    var record = collection.Find(bsonQueryDocument);            
    record.SetFields(Fields.Include("ProcessedData", "Status", "Filename"));
    return record;
}

我已經嘗試過如下代碼和其他一些代碼:

var cursor = collection.Find<BsonDocument>(Query.EQ("RunNumber", runnumber));
cursor.SetFields(Fields.Include("ProcesrecordsedData", "Status", "Filename"));
return cursor;    

感謝您的建議和提前幫助!

我習慣於通過 js 而不是 c# 與 mongo 交互,但看起來問題是記錄是 cursor 而不是文檔。 嘗試將FirstOrDefault()鏈接到您的Find上,或者如果您期待一堆文檔,您可以執行ToList()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM