2012-09-12 12 views
10

के साथ सतत एकीकरण तो जब आप विजुअल स्टूडियो में एमवीसी स्थापित करते हैं तो यह एमएसी डीएलएस को जीएसी में रखता है। इस प्रकार परियोजना को बनाने की अनुमति देने के लिए उन्हें आपके प्रोजेक्ट की फाइल सिस्टम में होने की आवश्यकता नहीं है।एएसपी.NET एमवीसी

जब हम इसे जीने के लिए तैनात करते हैं और हमारे निरंतर एकीकरण सर्वर एमवीसी और रेजर के लिए आवश्यक निर्भरता संस्करण नियंत्रण में नहीं हैं। काफी कारण है कि माइक्रोसॉफ्ट ने इतना जटिल क्यों बनाया है मेरे बाहर है।

मैं सबकुछ स्वचालित करने के लिए एक हूं, इसलिए मैं सोच रहा हूं कि लापता डीएलएस के मुद्दे को हल करने का सबसे अच्छा तरीका क्या है।

अब एएसपी.नेट एमवीसी परियोजनाओं के लिए मैंने फिल हेक के ब्लॉग पर http://haacked.com/archive/2011/05/25/bin-deploying-asp-net-mvc-3.aspx का उल्लेख करते हुए बिन परिनियोजन का उपयोग करके हल किया है। यह ठीक काम करता है लेकिन मेरे पास कुछ लाइब्रेरी प्रोजेक्ट भी हैं जो System.Web.Mvc को संदर्भित करते हैं जो बिल्ड सर्वर पर संकलित नहीं होंगे और विजुअल स्टूडियो में बिन तैनाती विकल्प लाइब्रेरी प्रोजेक्ट्स के लिए उपलब्ध नहीं हैं।

मुझे लगता है कि ऐसा करने के लिए सही बात NuGet का उपयोग

Install-Package Microsoft.AspNet.Mvc -Version 3.0.20105.1 

हालांकि, क्या सबसे अच्छा अभ्यास है और वहाँ इस तरह से NuGet का उपयोग कर के लिए किसी भी नुकसान हो रहा है? जैसे क्या मुझे जीएसी में डीएलएस को तैनात करने के बजाय इस पैकेज का उपयोग NuGet से करने के लिए मेरी सभी एएसपी.Net एमवीसी वेब परियोजनाओं को स्विच करना चाहिए?

उत्तर

8

हमने एमवीसी 4 प्रोजेक्ट में कुछ ऐसा ही किया है।

हमने NuGet का उपयोग करके एमवीसी स्थापित किया, फिर प्रोजेक्ट पर सक्षम पैकेज बहाल किया, भंडार में .nuget फ़ोल्डर को चालू किया। http://blog.davidebbo.com/2011/08/easy-way-to-set-up-nuget-to-restore.html

Install-Package Microsoft.AspNet.Mvc 
Install-Package NuGetPowerTools 
Enable-PackageRestore 

परियोजना बिल्ड सर्वर पर बनाया जाता है, लापता संकुल, nuget से डाउनलोड जब तैनाती वे स्वचालित रूप से बिन निर्देशिका में शामिल किए गए हैं कर रहे हैं।

मैं कहूंगा कि बिन तैनाती विधि का उपयोग करने और भंडार में आवश्यक असेंबली करने के बजाय आपका दृष्टिकोण सही है।

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