MongoDB, MongoDB v3.4 तक दशमलव का ठीक से समर्थन नहीं करता है। इस संस्करण से पहले यह सटीक त्रुटियों से बचने के लिए दशमलव को स्ट्रिंग के रूप में संग्रहीत करता था।
पूर्व v3.4 दशमलव को स्ट्रिंग के रूप में संग्रहीत करें, लेकिन यह अंकगणितीय संचालन को रोकता है। ऑपरेटर्स $min
. के रूप में , $avg
, ... उपलब्ध नहीं होगा। यदि सटीकता कोई बड़ी बात नहीं है, तो आप double
पर स्विच करने में सक्षम हो सकते हैं ।
v3.4+ आपको यह सुनिश्चित करने की आवश्यकता है कि निम्नलिखित पूर्व शर्त सत्य हैं:
- MongoDB सर्वर कम से कम v3.4 होना चाहिए।
- MongoCSharpDriver कम से कम v2.4.3 होना चाहिए।
- डेटाबेस में
featureCompatibilityVersion
होना चाहिए'3.4'
. पर सेट करें . यदि आपका डेटाबेस पुराने MongoDB संस्करण द्वारा बनाया गया है और आपने अपने सर्वर को v3.4 में अपग्रेड किया है तो आपका डेटाबेस अभी भी पुराने संस्करण पर हो सकता है।
यदि आपके पास सभी गुण सेट हैं, तो decimal128
का उपयोग करने के लिए निम्नलिखित धारावाहिकों को पंजीकृत करें टाइप करें:
BsonSerializer.RegisterSerializer(typeof(decimal), new DecimalSerializer(BsonType.Decimal128));
BsonSerializer.RegisterSerializer(typeof(decimal?), new NullableSerializer<decimal>(new DecimalSerializer(BsonType.Decimal128)));