第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何使用 C# 查詢 MongoDB 集合中的數(shù)組內(nèi)部?

如何使用 C# 查詢 MongoDB 集合中的數(shù)組內(nèi)部?

Go
素胚勾勒不出你 2022-11-21 20:13:10
我正在嘗試遍歷以下形式的 MongoDB 集合:{"_id":"lkashfhasdfhsdlafhlkjsdahf",""Array":[{                    "array_1":"17:00"}],}我想在上面的文檔中獲取 array_1 我在C#中使用以下代碼嘗試過(guò)result = Database.CollectionName.AsQueryable().Where(r => r.Array.array== array_inpit(Input) && condition2).ToList();預(yù)期結(jié)果:具有匹配數(shù)組的所有文檔當(dāng)前輸出:錯(cuò)誤任何幫助我應(yīng)該如何進(jìn)行。
查看完整描述

2 回答

?
鳳凰求蠱

TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超4個(gè)贊

使用MongoDb.Driver 包的基本示例。您需要定義一些數(shù)據(jù)類型,例如:


// Use [BsonIgnoreExtraElements] attribute when not defining ALL fields in record

internal class MainRecord

{

    public ObjectId _id { get; set; }


    public List<ArrayItem> ResourceStatus { get; set; }


    // All the other fields here

}


// [BsonIgnoreExtraElements] as above

internal class ArrayItem

{

    public string E2EId { get; set; }

}

(注意——我省略了數(shù)組搜索不需要的所有字段)。


然后實(shí)際查詢數(shù)據(jù):


var client = new MongoClient();


IMongoDatabase db = client.GetDatabase("database-name-here");


var collectionName = "collection-name-here";


IMongoCollection<MainRecord> collection = db.GetCollection<MainRecord>(collectionName);


var filter = Builders<MainRecord>.Filter.ElemMatch(x => x.ResourceStatus, x => x.E2EId == "1fdsfsfsfsfsffds0");


var result = collection.Find(filter);

編輯:我建議查看這篇文章,它提供了一些替代方法。


查看完整回答
反對(duì) 回復(fù) 2022-11-21
?
Cats萌萌

TA貢獻(xiàn)1805條經(jīng)驗(yàn) 獲得超9個(gè)贊

我創(chuàng)建簡(jiǎn)單的類來(lái)演示如何:


MongoDB 類


public class MongoDBConnect : IDisposable

{

    public IMongoClient client;

    public IMongoDatabase database;


    public MongoDBConnect()

    {

        client = new MongoClient("mongodb://localhost");

        database = client.GetDatabase("dbo");

    }


    public void Dispose()

    {

        GC.WaitForPendingFinalizers();

        GC.Collect();

    }

}

你的收藏課


public class YourCollection

{

    [BsonId()]        

    public ObjectId Id { get; set; }


    [BsonElement("YourCollectionID")]

    public string YourCollectionID { get; set; }


    [BsonElement("AccessKey")]

    public string AccessKey { get; set; }

}

您的集合數(shù)據(jù)類


public class YourCollectionDAO : MongoDBConnect

{

    public YourCollectionDAO()

    {


    }


    public YourCollection Find(string yourCollectionID)

    {

        var collection = this.database.GetCollection<User>("YourCollection");


        Expression<Func<YourCollection, bool>> filter = x => x.yourCollectionID == yourCollectionID;


        IList<YourCollection> filtering = collection.Find(filter).ToList();


        var yourCollectionItem = filtering.Where(x => x.yourCollectionID == yourCollectionID).FirstOrDefault();


        return yourCollectionItem;

    }

}

希望能幫助到你。


查看完整回答
反對(duì) 回復(fù) 2022-11-21
  • 2 回答
  • 0 關(guān)注
  • 130 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)