c# - Mongodb Update Fails with No Error -
मैं एक एएसपी.नेट एमवीसी वेबएपीआई नियंत्रक में नवीनतम मोजोडीबी-सी # चालक का उपयोग कर रहा हूं।
जब मैं कॉल करता हूं तो मुझे कोई त्रुटि नहीं मिली:
collection.Update (क्वेरी & lt; T & gt; .EQ (e = & gt; ई.आई.डी., entity.Id), MongoDB.Driver.Builders अपडेट करें & lt; T & gt;। बदलें (इकाई), WriteConcern.Acknowledged) लेकिन प्रभावित दस्तावेजों की संख्या 0 है।
अगर मैं एक यूनिटटस्ट सीधे नियंत्रक (यानी यह किसी भी सर्वर के तहत होस्ट या चल नहीं रहा है। बस मेरे यूनिटटेस्ट में नियंत्रक को तदनुसार एक सामान्य वर्ग की तरह व्यवहार करना) जब मैं ऐसा करता हूं तो सबकुछ अपेक्षित काम करता है।
मुद्दा जब मेरी साइट होस्ट की जाती है
और अधिक: अगर मैं एक नया ऑब्जेक्ट बनाऊँ और फिर उस ऑब्जेक्ट को संशोधित करने का प्रयास करें और अपडेट सफल होने से ऊपर कोड को कॉल करें। उदाहरण: अगर मैं अपने वेबएपीआई नियंत्रक पर पोस्ट करता हूं एक वस्तु बनाने के लिए जो इस कोड को चलाता है:
मोंगो कननक्शन। संकलन। इन्सर्ट (मान, लिखित कॉर्नर्न। स्वीकार किया गया) और तब मैं उस ऑब्जेक्ट और कॉल को संशोधित करता हूं मेरे वेबएपीआई नियंत्रक पर पोस्ट करें जो कोड का पहला ब्लॉक चलाता है:
collection.Update (क्वेरी & lt; T & gt; .EQ (e = & gt; ई.आई.डी., entity.Id), MongoDB.Driver । बिल्डर्स। अपडेट & lt; T & gt;। (एंटिटी) बदलें, लिखेंकोनर्न। स्वीकार करें) तब अपडेट सफल होता है।
मदद के लिए उन्नत में धन्यवाद!
UPDATE स्पष्ट सवाल की कमी के लिए क्षमा करें: क्या मैं कुछ गलत कर रहा हूं? वास्तविक विफलता क्या है पता लगाने के लिए कोई भी विचार? क्या MongoDB को कॉल डिबग करने का कोई तरीका है? जानकारी का एक और टुकड़ा हम अपने मोंगो डीबी रेपो की मेजबानी करने के लिए अज़ूर में मोंगोलाब का उपयोग कर रहे हैं।
दस्तावेज़ (ऑब्जेक्ट) की संरचना को चेक करें तालिका और सुनिश्चित करें कि यह उस संरचना से मेल खाता है जिसे आप अपडेट के लिए डीबी भेज रहे हैं।
मेरे अपडेट का आईडी मिलान हो रहा था, लेकिन JSON संरचना नहीं थी। यह अद्यतन चुपचाप विफल होने के कारण हुआ। निश्चित रूप से ऐसा क्यों होगा, लेकिन अब यह कि सभी दस्तावेज़ एक ही संरचना का उपयोग कर रहे हैं संपादन ठीक काम करता है।
पुराने दस्तावेज़ संरचना (अपडेट विफल):
{" "": "54361fb2ab9c1e1b04514731", "नाम": "नया नाम: 10/8/2014 10:40:03 अपराह्न", "होमटाउन": "कार्ल्सबैड", "रेटिंग": [], "ईसार्क्विटेड": गलत, " "," मैचवॉन्स ": 0," मैच-लॉस ": 0," गेमविंस ": 0," गेमलोस ": 0," कुल गेम ": 0," मैच ": []," वेब कैमरा इमेज ": रिक्त < / code> वर्तमान दस्तावेज़ संरचना (अपडेट सफल:
{"_id": {"$ oid": "54362a35ab9c2025287025d2"}, "_t": ["ModelBase "," प्लेयर "]," नाम ":" नाम बदल गया: 12/17/2014 8:58:23 अपराह्न "," होमटाउन ":" कार्ल्सबैड "," रेटिंग ": []," चित्रपैथ ":" "} तो क्वेरी एक दस्तावेज़ से मेल खाती है, लेकिन दस्तावेज़ संरचना से मेल नहीं खाती।
Comments
Post a Comment