मैं एक .NET वेब अनुप्रयोग पर काम कर रहा हूं जो SQL सर्वर डेटाबेस का लगभग 20 से 30 तालिकाओं का उपयोग करता है। अधिकांश टेबल कक्षा के रूप में .NET समाधान में शामिल किए जाएंगे। मैंने ऑब्जेक्ट्स को पढ़ने के लिए अपनी डेटा एक्सेस लेयर लिखी है, और उन्हें डेटाबेस में लिखना है। पूरी बात केवल कुछ कक्षाओं से मिलती है और कोड की बहुत कम पंक्तियां जेनिक्स और प्रतिबिंब का उपयोग करने के लिए जेनरेट और प्रतिबिंब का उपयोग करती हैं। अब, ऐसी चीज एनएचबीर्नेट (या सिमिलियर फ्रेमवर्क) का उपयोग करके किया जा सकता है और कुछ सहकर्मियों का दावा है कि इसका उपयोग नहीं करना मेरे लिए मूर्ख है। इसका उपयोग करने के लिए मेरा मुख्य तर्क यह है कि मैं अपने आवेदन पर अधिकतम नियंत्रण चाहता हूं, पता है कि सबकुछ क्या करता है और सबकुछ कैसे काम करता है, भले ही इससे मुझे और विकास का समय लगे। मुझे यह भी पसंद नहीं है कि मुझे एक्सएमएल फाइलों में अपना डेटाबेस मैप करना है (मेरा स्वयं का समाधान मुझे इसे इकाई वर्ग फ़ाइलों में मैप करने देता है)।क्या यह मेरी मूर्खता है कि मेरे प्रोजेक्ट के लिए एनएचबीरनेट का उपयोग न करें?
तो, क्या मैं सुनने के लिए आप से चाहते हैं, यह वास्तव में इस स्थिति में NHibernate का उपयोग नहीं करने के लिए बेवकूफ है? क्या मैं वास्तव में अज्ञानी हूं या क्या यह मेरे स्वयं के समाधान का उपयोग करने के लिए इतना अजीब विचार नहीं है?
एनएचबीनेटेट एक विकल्प है, जो एडीओ.NET इकाई फ्रेमवर्क (इसे भी जांचें) के रूप में एक विकल्प है। –
खोजें NHibernate.Mapping.Attributes - XML में डेटाबेस मेटाडेटा को स्टोर करने की आवश्यकता नहीं है। –
NHibernate का उपयोग करते समय आप यह भी जान सकते हैं कि "सब कुछ क्या करता है और कैसे सब कुछ काम करता है"; स्रोत कोड आसानी से उपलब्ध है। एनएचप्रोफ जैसे अन्य महान टूल भी हैं जो आपको दिखाएंगे कि क्या हो रहा है। –