簡體   English   中英

MongoDB集合到.Net字典的最佳實踐

[英]MongoDB collection to .Net dictionary best practice

我有一個應用程序,可以對內存數據執行快速操作。 此數據在內存中表示為Dictionary<MyKey,MyData> MyKey是一個包含一些字符串標記的類:

public class MyKey
{
    string tag1;
    string tag2;
    ... 
}

MyData是一個包含一些文本的對象。

我想將它作為一組文件存儲在MongoDB中,如:

{
    tag1: "foo1",
    tag2: "foo2",
    mydata: { ... }
},
{
    tag1: "bar1",
    tag2: "bar2",
    mydata: { ... }
}...

這樣我就可以使用mongodb選擇器了:

db.MyCollection.find({tag1: "foo1"})

但是編寫序列化器/解串器變得非常煩人,因為一對一映射可以:

{
    mykey: { tag1: "foo1", tag2: "foo2"},
    mydata: { ... }
}

我覺得這是一個非常普遍的問題。 實現這一目標的最佳解決方案是什么? 我想保留原始的Dictionary結構,但我不想為Serializer重新發明輪子。

我可以遵循的任何想法/教程? 這甚至是我應該做的事情嗎?

這種形式的文件沒有問題:

{
    mykey: { tag1: "foo1", tag2: "foo2"},
    mydata: { ... }
}

你仍然可以查詢它。

db.collection.find({'mykey.tag1': 'foo1'})

這回答了你的問題了嗎? 是否還有其他特殊原因需要該文檔結構?

暫無
暫無

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

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