मैं अपने एएसपीनेट एप्लिकेशन के लिए एक मोंगो डीबी समर्थित प्रमाणीकरण मॉड्यूल पर काम कर रहा हूं। MongoDB डेटाबेस में ऐसे उपयोगकर्ताओं का संग्रह है जहां मैं लॉगिन जानकारी संग्रहीत करता हूं - उपयोगकर्ता नाम, ईमेल और पासवर्ड। दोनों उपयोगकर्ता नाम और ईमेल अद्वितीय होने की तैयारी में हैं:MongoDB अपवादों को संभालने के बेहतर तरीके
users.ensureIndex({email:1}, {unique:1})
users.ensureIndex({uname:1}, {unique:1})
अब, अगर मैं मौजूदा uname या ईमेल के साथ एक रिकॉर्ड डालने के लिए प्रयास करते हैं, मैं एक MongoDB अपवाद:
Safemode detected an error: E11000 duplicate key error index:
authdb.users.$email_1 dup key: { : "[email protected]" }
(response: { "err" : "E11000 duplicate key error index: authdb.users.$email_1
dup key: { : \"[email protected]\" }", "code" : 11000, "n" : 0, "connectionId" : 9,
"ok" : 1.0 })
मैं बताने की आवश्यकता उपयोगकर्ता जो उपयोगकर्ता नाम या ईमेल दर्ज कर चुके हैं, वे पहले से मौजूद हैं, लेकिन पूरा अपवाद केवल पाठ का एक ब्लॉब है, और यह देखने के लिए कि मुझे क्या चल रहा है यह देखने के लिए मुझे "$ ईमेल" या "$ uname" त्रुटि संदेश पाठ में है या नहीं । क्या मोंगोडीबी अपवादों के लिए कुछ प्रकार का पार्सर है जो मुझे यह जानने में मदद करेगा कि अपवाद क्या है?
क्या यहां एक अच्छा अभ्यास माना जाता है? अगर हमें कोशिश करने की कोशिश है तो क्या हमें एसिंक्रोनस डालने का उपयोग करना चाहिए? – AdamMc331