टीएल; डॉ: यदि आप आलसी हैं, तो BsonSerializer.LookupSerializer
. का उपयोग करें या BsonMemberMap.GetSerializer
. इसे सही करने के लिए , सुनिश्चित करें कि पंजीकरण कोड एक बार और केवल एक बार कहा जाता है ।
इससे बचने का सबसे अच्छा तरीका यह सुनिश्चित करना है कि धारावाहिक केवल एक बार पंजीकृत हो। कुछ वैश्विक स्टार्टअप कोड रखना एक अच्छा विचार है जो किसी भी ऐसी चीज़ को पंजीकृत करता है जो एक बार एप्लिकेशन के लिए वैश्विक है, और केवल एक बार। इसमें निर्भरता इंजेक्टर कॉन्फ़िगरेशन, ऑटोमैपर और मोंगोडब ड्राइवर जैसे उपकरण शामिल हैं। यदि आप इस कोड को केवल एक बार और कोड में एक बिंदु से कॉल करते हैं, तो आपको थ्रेड सुरक्षा, डेड लॉक या इसी तरह की समस्याओं के बारे में चिंता करने की आवश्यकता नहीं है।
MongoDB ड्राइवर कॉन्फ़िगरेशन सेटिंग्स थ्रेड-सुरक्षित हैं, लेकिन यह न मानें कि यह उन सभी सॉफ़्टवेयर पैकेजों के लिए सही है जिन्हें आपको कॉन्फ़िगर करने की आवश्यकता हो सकती है। साथ ही, लॉक करना बहुत महंगा हो सकता है प्रदर्शन के अनुसार यदि आपका कोड बहु-थ्रेडेड है, उदाहरण के लिए वेब-एप्लिकेशन में। आखिरी लेकिन कम से कम, आप जो लुकअप कर रहे हैं वह पहली जगह में मामूली नहीं हो सकता है, क्योंकि कुछ विधियों को पूरे विरासत वृक्ष पर चलने की आवश्यकता होती है।