मेरे पास 5 परियोजनाओं के साथ विजुअल स्टूडियो में एक समाधान है। वे हैं:विजुअल स्टूडियो परियोजनाओं में आईएलएमर्ज के साथ बनाई गई असेंबली का संदर्भ
Foo.Core
: कोर कार्यक्षमता- : वेब-विशेष विस्तारण
Foo.Web.Mvc
: जनरेट किया गयाFoo.Web
कोर के ऊपर एक बने कोड MVC-विशिष्ट एक्सटेंशनNewtonsoft.Json
: 3 पार्टी पुस्तकालय
मैं ILMerge उपयोग करने के लिए एक भी विधानसभा में Foo.Core
, और Newtonsoft.Json
मर्ज करना चाहते हैं, Foo
कहा जाता है। यह आसान हिस्सा है।
जिस समस्या में मैं दौड़ रहा हूं वह यह है कि Foo.Web
और Foo.Web.Mvc
दोनों को विलयित असेंबली के तीनों को संदर्भित करने की आवश्यकता है।
यदि मैं मूल असेंबली का संदर्भ देता हूं, तो आईएलएमर्ज करने के बाद उनके पास अमान्य संदर्भ होंगे।
यदि मैं ILMerged असेंबली का संदर्भ देता हूं, तो मुझे एक डीबग असेंबली का संदर्भ देना होगा और फिर सबकुछ पैकेज करने से पहले इसे बदलना होगा, जो आदर्श नहीं लगता है।
मैंने Foo
नामक एक प्रोजेक्ट बनाने का प्रयास किया है, जो 3 मर्ज किए गए असेंबली का संदर्भ देता है और आईएममेरेड असेंबली के साथ अपने आउटपुट को प्रतिस्थापित करता है, लेकिन ऐसा लगता है कि यह बिल्कुल काम नहीं करता है।
क्या ऐसा करने का कोई विश्वसनीय तरीका है?
हाँ, मैंने ऐसा करने की कोशिश की है, लेकिन मैं जिस प्रभाव को ढूंढ रहा था उसे प्राप्त नहीं कर सका। ऐसा लगता है कि आईएलएमर्ज को एक संकलन-समय की बजाय रिलीज से पहले अंतिम चरण के लिए आरक्षित होने की आवश्यकता होगी। –
मुझे लगता है कि यदि आप अपनी परियोजनाओं को सही क्रम में बनाते हैं तो आप इसे प्राप्त कर सकते हैं। क्या आपने बिल्ड ऑर्डर सुनिश्चित करने के लिए अपनी परियोजना निर्भरताओं को सेट किया है? – JoeBilly