5

मैं एक एप्लिकेशन के लिए एएसपी.नेट एमवीसी 3 का उपयोग करता हूं जो भारी उपयोग या उपयोगकर्ता और भूमिकाएं बनाता है।NHibernate और ASP.NET सदस्यता

उपयोगकर्ता बनाने और भूमिका निभाने के लिए मैं एएसपी.NET सदस्यता के माध्यम से मानक प्रक्रिया का उपयोग करता हूं।

पूरे ऐप के दौरान मैं अंतर्निहित डेटा एक्सेस के लिए एनएचबीर्नेट का उपयोग करता हूं, सिवाय इसके कि स्थान डिफ़ॉल्ट सदस्यता प्रदाता और रोलप्रोवाइडर कार्यान्वयन का उपयोग किया जाता है (खाता नियंत्रक के अंदर जो उन कार्यान्वयनों को कॉल करता है)।

मैं एएसपी.NET सदस्यता द्वारा प्रबंधित की गई तालिकाओं पर मानों को पढ़ने/संपादित/संशोधित करने में सक्षम होने के लिए एनएचबीर्नेट का उपयोग करना चाहता हूं।

  1. MembershipProvider और RoleProvider (या यहां तक ​​this one का उपयोग करें) के लिए एक कस्टम NHibernate कार्यान्वयन लिखें:

    मैं दो समाधान मिल गया। यह सबसे कठिन रास्ता है।

  2. केवल तालिकाएं (जैसा कि here वर्णित है) मानचित्र करें और फिर सीधे NHHernate का उपयोग करें (हालांकि खाता नियंत्रक से कोई भी डिफ़ॉल्ट क्रिया अभी भी डिफ़ॉल्ट प्रदाताओं द्वारा संभाली जाएगी)।

कोई सुझाव/सिफारिशें?

उत्तर

3

मैंने कस्टम प्रदाता का उपयोग किया है जो आप बहुत अच्छी सफलता से लिंक करते हैं। मैंने इसमें कुछ बदलाव किए हैं, ताकि यह अपने जीवनकाल के लिए एक सत्र का उपयोग करे।

यदि आप एएसपीनेट सदस्यता का उपयोग करना चाहते हैं तो मुझे लगता है कि दृष्टिकोण आपकी सबसे अच्छी शर्त है, मुख्य रूप से पोर्टेबिलिटी के लिए (यह आपके डेटाबेस में मौजूद किसी भी एसपी पर निर्भर नहीं है)। मैं वर्तमान में एमएसएसएलएल और पोस्टग्रेस के खिलाफ उस लिंक से संशोधित प्रदाता का उपयोग कर रहा हूं, और मैंने इसे MySQL के खिलाफ भी उपयोग किया है।

+0

मैं देखता हूं। लेकिन इस कार्यान्वयन के लिए कोई इकाई परीक्षण नहीं है। –

+0

मैं इस कार्यान्वयन के लिए यूनिट-टेस्ट लिख रहा हूं, और हाँ यह बॉक्स से बाहर काम करता है :-) (अब तक)। –

+0

बहुत बढ़िया, यह काम कर खुश है। मैं इसके चारों ओर परीक्षण लिखने के लिए कभी नहीं मिला, अपने पोस्ट करने के लिए स्वतंत्र महसूस करें: डी – AlexCuse

संबंधित मुद्दे