2013-01-19 11 views
11

मैं जानना चाहता हूं कि Microsoft.Practices.EnterpriseLibrary.Data क्या है और हम इस डीएल का उपयोग क्यों करते हैं। इस डीएल के लाभ क्या हैं।माइक्रोसॉफ्ट क्या है। प्रैक्टिस। एंटरप्राइज लाइब्रेरी। डेटा

मैं 3-स्तरीय आर्किटेक्चर पर एक प्रोजेक्ट बनाना चाहता हूं, एसक्यूएल प्रश्नों के लिए सबसे अच्छा तरीका क्या है।

मौसम मैं इस डीएल का उपयोग करता हूं या सरल वर्गमीटर और डेटाएडाप्टर के लिए जाता हूं। वर्तमान में मैं इस तरह से काम कर रहा हूँ: दाल फ़ाइल में मेरे कोड है:

public void Insert(long id) 
{ 
    connection.Open(); 
    SqlCommand dCmd = new SqlCommand("test_procedure", connection); 
    dCmd.CommandType = CommandType.StoredProcedure; 
    try 
    { 
     dCmd.Parameters.AddWithValue("@id", id);   
     dCmd.ExecuteNonQuery(); 
    } 
    catch 
    { 
     throw; 
    } 
    finally 
    { 
     dCmd.Dispose(); 
     connection.Close(); 
     connection.Dispose(); 
    } 
} 

मैं उलझन में मौसम मैं सही तरीके से काम कर रहा हूँ कर रहा हूँ या मैं Microsoft.Practices.EnterpriseLibrary.Data का उपयोग करना चाहिए और उसके बाद मैं DatabaseFactory पैदा करते हैं।

+0

मैं वहीं हूं जहां आप हैं इसलिए मैं सहानुभूतिशील हूं। मैं SQLLommand और SqlConnection ऑब्जेक्ट्स का उपयोग करने में कुछ भी गलत नहीं है। एंटरप्राइज़ लाइब्रेरी जैसी चीजें उच्च स्तरीय रैपर हैं जो आपको कोड लिखने का साधन देती हैं जिन्हें डेटाबेस की विस्तृत श्रृंखला (केवल SQL सर्वर से अधिक) के साथ काम करने के लिए कॉन्फ़िगर किया जा सकता है। अगर आप सिर्फ सीख रहे हैं, तो मैं आपको जो मिला है उसके साथ छड़ी कहूंगा। –

+0

एंटिटी फ्रेमवर्क माइक्रोसॉफ्ट के वर्तमान ओआरएम डी पत्र –

+1

@AaronAnodide: मुझे पता है कि कुछ भी गलत नहीं है लेकिन मैं जानना चाहता हूं कि अंतर क्या है और 'माइक्रोसॉफ्ट.प्रैक्टिस.इंटरपीर लाइब्रेरी.डाटा' के वास्तविक लाभ क्या हैं। –

उत्तर

13

Microsoft.Practices.EnterpriseLibrary.Data लाइब्रेरी का मुख्य लाभ यह है कि यह डेटाबेस-अज्ञेय कोड का उत्पादन करना आसान बनाता है। डेवलपर मुख्य रूप से अधिक जेनेरिक डाटाबेस बनाम एसक्यूएलकनेक्शन और डीबी कॉमांड बनाम एसक्लोकॉमैंड ऑब्जेक्ट्स के साथ इंटरैक्ट करता है, सिद्धांत रूप में अंतर्निहित डेटाबेस को स्विच करने की तंत्र, एमएसएसएलएल से ओरेकल तक कुछ आसान हो जाता है। भले ही मेरे विकास के अनुभव में मैंने कभी ऐसा नहीं देखा है।

माइक्रोसॉफ्ट.प्रैक्टिस। एंटरप्राइज लाइब्रेरी.डाटा डेवलपर को प्रश्न पैरामीटर के लिए डीबी पैरामीटर का उपयोग करने का निर्देश भी देता है, जो एसक्यूएल इंजेक्शन हमलों के जोखिम को कम करता है।

माइक्रोसॉफ्ट.प्रैक्टिस.इंटरपीर लाइब्रेरी.डाटा कोर एडीओ का एक उच्च सार है। नेट संरचना करता है और डेवलपर को कम से कम कोड में एक ही कार्य को पूरा करने में सक्षम बनाता है।

यदि आपकी सीखने की डेटा एक्सेस रणनीतियों का सुझाव है कि मैं एडीओ के साथ जारी रखने का सुझाव देता हूं। जितना अधिक आप मूल बातें समझते हैं, उतना ही अधिक उपयोगी माइक्रोसॉफ्ट। प्रैक्टिस। एंटरप्राइज लाइब्रेरी। डेटा या एंटिटी फ्रेमवर्क या एनएचबेर्नेट का उपयोग करना है क्योंकि आप बुनियादी बातों को समझते हैं क्योंकि तकनीकें हैं एडीओ नेट के शीर्ष पर बनाया गया।

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