क्या माइग्रेशन या SQL सर्वर डेटा टूल के साथ कोड पहले एक बेहतर फिट है?


11

मुझे एक नई MVC4 वेबसाइट बनाने के लिए एक युक्ति दी गई है, यह पहली बार में बहुत बड़ी परियोजना नहीं होगी, लेकिन मुझे संदेह है कि यह बढ़ेगा क्योंकि व्यवसाय को इसके लिए नए विचार मिलते हैं।

.NET 4.5 ASP.NET MVC4 और EF का उपयोग करके मुझे अपने डेटाबेस को संभालने के लिए माइग्रेशन या Sql सर्वर डेटा टूल्स (SSDT) ​​के साथ कोड-प्रथम के बीच चयन करना होगा।

SSDT के साथ मैं अपने समाधान के भाग के रूप में एक परियोजना में अपने डेटाबेस को नियंत्रित कर सकता हूं और उत्पादन से लेकर dacpac फ़ाइलों का उपयोग करने तक सभी तरह के बदलावों को संभालता हूं। MVC3 से कोड-प्रथम का मेरा अनुभव सीमित डेटाबेस विकल्पों के कारण विकास से परे इसका उपयोग नहीं करना था। यह हमेशा मॉडल परिवर्तन पर डीबी छोड़ने या मैन्युअल रूप से डीबी परिवर्तनों को संभालने के साथ समाप्त होगा। हालांकि मुझे MVC4 माइग्रेशन के साथ विश्वास करने के लिए प्रेरित किया जाता है जो अब मामला नहीं है और मैं अब डीबी को अपडेट पुश कर सकता हूं।

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

जवाबों:


2

मेरी व्यक्तिगत राय है कि कोडफर्स्ट महान उपकरण और विकास के लिए महान है। यदि आपके पास पहले से ही उत्पादन डेटाबेस है, तो डेटाबेसफर्स्ट डेवलपमेंट के चरणों को बाहरी उपकरण या हाथ से स्क्रिप्ट करना चाहिए।

डेटाबेस संस्करण नियंत्रण प्रणाली के विकास में शामिल होने के लिए कोडफर्स्ट और वितरित डेटाबेस विकास प्रदान करता है।

प्रारंभिक बिंदु, यह एक अच्छी श्रृंखला है:

http://coding.abel.nu/2012/02/using-entity-framework-to-create-a-database/


आप ssdt की कोशिश की है, 2 की तुलना करने में सक्षम?
जेम्स

1
हां, मैं एसएसडीटी के पिछले संस्करण में नियमित रूप से इसका उपयोग करता हूं। मैंने इन लिंक्स पर सबसे नया देखा: msdn.microsoft.com/en-us/jj650015 , sqlblog.com/blogs/jamie_thomson/archive/2013/03/03/21/… , develop.com/sqllvertwelvedatatools , blogs.msdn.com/ b / ssdt / आर्काइव / 2012/12/13 /… । मैंने डेटाबेस यूनिट परीक्षण की कोशिश नहीं की है, लेकिन मुझे लगता है कि कुंजी को एक-दूसरे के कोडफर्स्ट और एसएसडीटी के बगल में उपयोग किया जाना है ।
गैबोर प्लाज

मैं जल्द ही उन ब्लॉगों को पढ़ूंगा। मुझे नहीं लगता था कि कोड-प्रथम और एसएसडीटी एक साथ काम करेंगे। जब तक आप देव के दौरान कोड-प्रथम का उपयोग करने और उत्पादन के लिए SSDT पर स्विच करने का मतलब नहीं करते हैं? मैं आपके लिंक पढ़ूंगा!
जेम्स

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

मुझे जो लगता है कि SSDT Db फर्स्ट और आपके द्वारा कही गई सभी चीज़ों के लिए एकदम सही है और ऐसा लगता है कि MVC4 में जोड़े गए माइग्रेशन विकल्प वास्तव में शुरुआती देव से परे कोड-प्रथम प्रयोग करने योग्य हैं!
जेम्स
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.