c# - क्या एमवीसी परियोजना के साथ अलग डीएलएस बनाना संभव है?




asp.net asp.net-mvc (4)

Asp.net MVC5 में हमारे पास एक बड़ी परियोजना है हमारे मॉडल और व्यावसायिक तर्क को अलग कक्षा पुस्तकालयों में परिभाषित किया गया है। अब हमें किसी मौजूदा प्रोजेक्ट में एक अन्य मॉड्यूल जोड़ने की जरूरत है लेकिन हम एक अलग डीएलएल चाहते हैं।

यह मॉड्यूल भी सबसे जावास्क्रिप्ट, सीएसएस फ़ाइलों और अन्य फ़ाइलों को साझा करता है यही कारण है कि हम एमवीसीसी परियोजना को अलग नहीं करना चाहते हैं।

क्या कोई कारण है कि हम मॉड्यूल के आधार के लिए अलग डीएलएल बना सकते हैं। इसलिए हम अन्य डीएलएस को तैनात नहीं करना चाहते हैं या स्पर्श नहीं करना चाहते हैं।

https://code.i-harness.com


हां, आप अन्य कक्षा पुस्तकालय परियोजना में तर्क कक्षाएं जोड़ सकते हैं (आप जितना चाहें उतने हो सकते हैं), फिर उन वर्ग पुस्तकालयों के संदर्भ को एमवीसी प्रोजेक्ट में जोड़ें। अपने कोड में बाद के वर्गों को आयात करना मत भूलना

संपादित करें: मैं मान रहा हूं कि आप विजुअल स्टूडियो का उपयोग कर रहे हैं, यदि हां, तो आप फ़ाइल -> प्रोजेक्ट बनाएं, यह एक ही समाधान में एक और प्रोजेक्ट बनाएगा।


अन्य लोगों ने क्षेत्र के उपयोग के बारे में उत्तर पोस्ट किया है क्षेत्र महान और अच्छे और मददगार होते हैं वे वास्तव में परियोजना संरचना को लाभ पहुंचाते हैं।

यह मॉड्यूल भी सबसे जावास्क्रिप्ट, सीएसएस फ़ाइलों और अन्य फाइल को साझा करता है

आपके प्रश्न का शीर्षक .dlls के बारे में है, लेकिन मुझे संदेह है कि क्लाइंट-साइड संसाधन मुख्य चिंता का विषय हैं।

यदि आप अपने वेबपैड को दो अलग-अलग हिस्सों के रूप में मानते हैं: सर्वर साइड और क्लाइंट-साइड, आप प्रत्येक को मॉडर्यूलाइज़ करने के लिए उपयुक्त रणनीति का उपयोग कर सकते हैं। सर्वर-साइड कोड को व्यवस्थित करने के लिए क्षेत्र महान हैं, लेकिन फ्रंट-एंड को सहायता नहीं करते हैं

फ्रंट एंड पैकेज प्रबंधन विकल्पों का विस्तार एएसपी.नेट 5 के लिए किया गया है। पारंपरिक न्यूगेट पैकेज प्रबंधक के अलावा, बोवर और एनपीएम अब समर्थित हैं। उदाहरण के लिए, विचार करें कि यह आलेख एनपीएम के माध्यम से jQuery को स्थापित करने का तरीका दर्शाता हैदृश्य स्टूडियो में एनपीएम, बोवर, और गुलप की स्थापना के बारे में एक और अच्छा लेख है।

क्या करें: अपने मौजूदा क्लाइंट-साइड कोड को लें और कस्टम एनपीएम या बोवर पैकेज बनाएं, और उसके बाद एक या अधिक एस्पनेट परियोजनाओं से उस पैकेज का उपयोग करें।


आपके विवरण से, आप कहते हैं कि परियोजनाएं सीएसएस और जेएस फ़ाइलों को साझा करती हैं। इससे मुझे विश्वास होता है कि आप एक अलग एमवीसी वेबसाइट (संभवतः बड़ी कॉर्पोरेट वेबसाइट का हिस्सा) के बारे में बात कर रहे हैं। यह क्षेत्र के उपयोग के साथ सबसे आसान हो सकता है यदि आप क्षेत्र से परिचित नहीं हैं, तो कृपया निम्नलिखित पढ़ें: https://msdn.microsoft.com/en-us/library/ee671793(VS.100).aspx

बेशक क्षेत्रों का उपयोग करने से आपको हर क्षेत्र में बदलाव की पूरी साइट पर तैनात करने की आवश्यकता होगी, और आपने उल्लेख किया है कि आप ऐसा करने से बचने के लिए चाहते हैं।

यदि आप क्षेत्रों का उपयोग नहीं करना चाहते हैं, और इसके बजाय एक ही समाधान में एक और MVC परियोजना बनाना चाहते हैं, तो आप इसे आसानी से भी कर सकते हैं। आप समाधान पर दाहिने क्लिक कर सकते हैं, परियोजना को जोड़ने के लिए नई परियोजना> एएसपी.नेट वेब एप्लीकेशन> एमवीसी जोड़ सकते हैं। इन दो एमवीसी परियोजनाओं के बीच जेएस और सीएसएस फ़ाइलों को साझा करने के लिए, आपको एक नया समाधान फ़ोल्डर बनाना होगा (ठीक क्लिक करें> नया समाधान फ़ोल्डर जोड़ें), और उस फ़ोल्डर में अपनी संसाधन फ़ाइलों को स्थानांतरित करें। आपके समाधान में प्रत्येक MVC परियोजना के अंदर, आप मौजूदा आइटम जोड़ देंगे और उन जेएस / सीएसएस संसाधन फ़ाइलों का चयन करेंगे। इस तरह यदि आप सीएसएस फ़ाइल बदलते हैं, तो यह दोनों परियोजनाओं में दिखाई देगा।

अधिक जानकारी के लिए, निम्नलिखित पढ़ें:

आप एक समाधान में कई परियोजनाओं के बीच स्क्रिप्ट कैसे साझा करते हैं?


मुझे नहीं पता है कि आपने प्रबंधित एक्सटेंसिबिलिटी फ़्रेमवर्क (एमईएफ) के साथ प्रयास किया है या नहीं .. यह framework आपको जरूरी काम करता है ... मुझे लगता है कि लिंक से नीचे आपको अधिक मदद मिलेगी

एमएसएफ़ के साथ एएसपी.नेट एमवीसी एक्सटेंसिबिलिटी

एएसपी.नेट एमवीसी 4 और एएसपी.NET वेब एपीआई के साथ एमईएफ को कैसे एकीकृत किया जाए

http://www.codeproject.com/Articles/167321/MEF-with-ASP-NET-Hello-World





dll