है, मैं अपने .NET MVC4 प्रोजेक्ट में SimpleMembership का उपयोग कर रहा हूं। विकास के दौरान, डेटाबेस को मैन्युअल रूप से मैनिपुलेट/पुनर्निर्माण करते समय, मुझे एक त्रुटि मिली है जो उत्पादन में असंभव नहीं होगी, लेकिन मैं इसे हल करना चाहता हूं और मुझे इसे संभालने का एक शानदार तरीका नहीं मिल रहा है।.NET MVC4 SimpleMembership त्रुटि - "कोई उपयोगकर्ता नहीं मिला था जिसका नाम xxx"
यदि, एप्लिकेशन में लॉग इन करने के बाद, आपका उपयोगकर्ता नाम डेटाबेस में बदल जाता है, या आपका उपयोगकर्ता रिकॉर्ड पूरी तरह से हटा दिया जाता है, तो उपयोगकर्ता अब एप्लिकेशन के किसी भी पेज तक पहुंच नहीं पाएगा ... सार्वजनिक पृष्ठों सहित अनाम दृश्य, और लॉगिन स्क्रीन। इसके बजाए, एक अपवाद फेंक दिया गया है - "कोई उपयोगकर्ता नहीं मिला था जिसका नाम 'उपयोगकर्ता नाम' है।
मेरे आवेदन के सभी पृष्ठ एक आंशिक दृश्य प्रदर्शित करते हैं जो लॉगिन/लॉगऑफ नियंत्रण प्रदान करता है। अनुरोध। प्रमाणीकृत डेटाबेस में क्या है इसके बावजूद सत्य लौट रहा है। ऐसा लगता है कि ऐप सोचता है कि कुकी अभी भी कुकी में जानकारी के आधार पर लॉग इन है, लेकिन डेटाबेस में कोई संबंधित रिकॉर्ड नहीं मिल सकता है। ऑथ कुकी साफ़ करने से यह हल हो जाता है, लेकिन यह एक निर्देश नहीं है जिसे मैं ऐसे उपयोगकर्ता को प्रदान करना चाहता हूं जो इसका अनुभव कर रहा हो।
मेरा वर्तमान समाधान ग्लोबल.एक्सएक्स, स्पष्ट कुकीज में उस अपवाद को पकड़ना और लॉगिन पेज पर रीडायरेक्ट करना है। यह सिर्फ मेरे लिए पूरी तरह से हैकी लगता है।
क्या किसी को भी इस परिदृश्य का बेहतर समाधान मिला है? मैंने पुराने .NET सदस्यता प्रदाता का उपयोग करके इस तरह के मुद्दों का कभी सामना नहीं किया है ... मेरी उम्मीद यह है कि इस स्थिति को बॉक्स के ठीक बाहर कवर किया जाना चाहिए और मुझे इसके लिए खाता नहीं रखना चाहिए ... यदि कोई रिकॉर्ड बदल दिया गया है/डीबी में हटा दिया गया है, उपयोगकर्ता को प्राधिकरण को विफल करना चाहिए और स्वचालित रूप से लॉगिन पृष्ठ पर रीडायरेक्ट किया जाना चाहिए।
खैर मैं यह अभी भी कल्पना उत्पादन में होगा, मेरा मतलब यह था कि ऐसा नहीं होगा क्योंकि उत्पादन की स्थिति में मैं डेटाबेस में रिकॉर्ड मैन्युअल रूप से हटा नहीं पाऊंगा। यह मेजबान स्विच करने की बात नहीं है। मैंने इसे दूर करने का तरीका जानने का अधिक समय नहीं बिताया है, लेकिन इसे मूल रूप से मेरे ब्राउज़र में एक प्रमाणीकरण कुकी के साथ करना है जो किसी ऐसे उपयोगकर्ता का संदर्भ देता है जो डेटाबेस में मौजूद नहीं है ... मैं बस यह चाहता हूं कि इसे संभाला जा सके बॉक्स से अधिक सुंदरता से बाहर। – Gadget27