我做了一些搜索,但我無法理解它是如何工作的。使用.NET將數據插入到MongoDB中讀取數據
mongo C#驅動程序正在使用一個_t來存儲類型,所以當我反序列化我可以知道哪些子類使用,但我想了解它是如何工作的,如果我想用PHP或另一個相同的數據庫編程語言。
恐怕會使反序列化不可能因爲那個_t類型。如果有人能夠解釋我是如何工作的,我試圖在網上獲得答案,但它仍然是部分的。
這是一個創紀錄的例子,我用的MongoDB和C#得到:
{
"_id" : "7aafd454629944c3a1a4b6a9c80db677",
"_t" : "a-WhereIsFrom",
"clickfrom" : "here",
"whichwidget" : "none",
"Name" : "Franck"
}
也許我誤解了。 Mongo存儲/傳輸二進制JSON的BSON。上下文本身就是JSON。 JSON反序列化可以在任何語言中發生,因爲它只是對象的文本表示。 C#是一種靜態類型的語言,雖然可以反序列化爲「動態」,但這並不好。 '_t'字段就是這樣,Mongo反序列化庫可以知道它被翻譯的對象(即,如果你有一個繼承類「FooBar:Foo」,驅動程序知道它是否需要將對象翻譯爲'Foo'或者'FooBar'。你只是試圖理解它是如何工作的? –
是的,這似乎對我來說是合法的,我一直在和一些朋友討論這個問題,並提出了相同的解釋,我想,就像你說的那樣, _t對於C#來說是有用的,但是對於其他語言來說,它可以像你說的那樣工作,因爲json反序列化可以在任何語言中發生,我試圖理解它是如何工作的,但是要最終使用php! –