2009-07-17 10 views
10

असेंबली रिफ्रेंस वेब एप्लिकेशन के लिए कहां संग्रहीत हैं?वेब एप्लिकेशन प्रोजेक्ट असेंबली संदर्भ कहां संग्रहीत किए जाते हैं?

एक वेब साइट में, जब आप कोई संदर्भ जोड़ते हैं तो मैं web.config में असेंबली नोड को लिखित असेंबली टैग देखता हूं। मैं सिर्फ उत्सुक हूं कि वेब एप्लिकेशन प्रोजेक्ट सही स्थानीय डीएल प्राप्त करने के लिए कनेक्शन कैसे बनाता है?

मैं मैन्युअल रूप से संदर्भ जोड़ता हूं और एप्लिकेशन बनाता है, लेकिन डीएलएल को बीआईएन फ़ोल्डर में आयात नहीं किया जाता है, और वेब कॉन्फ़िगरेशन में असेंबली नोड्स वेब कॉन्फ़िगरेशन में नहीं बनाए जाते हैं क्योंकि वे एक वेब साइट पर हैं। मैं पाठ 'असेंबली = "कुछ एस्क्रिप्ट्स ..." के लिए समाधान खोज करता हूं और कोई परिणाम नहीं मिलता है।

मैं सिर्फ उत्सुक हूं क्योंकि मैं एक तीसरे पक्ष के नियंत्रण विक्रेता के रूप में असेंबली संदर्भों को अद्यतन करने का केंद्रीकरण करने की कोशिश कर रहा हूं क्योंकि नियमित आधार पर हॉटफिक्स को बाहर रखा जाता है और हम सभी व्यक्तिगत पृष्ठ असेंबली के आसपास घूमने और अद्यतन करने के लिए समाप्त होते हैं। मैं इसे वेब साइट प्रोजेक्ट में प्रभावी ढंग से करने में सक्षम था, लेकिन मैं वेब एप्लिकेशन प्रोजेक्ट्स के लिए बिल्कुल नया हूं। किसी भी सलाह या लिंक की सराहना की जाएगी। मुझे लगता है कि मैं एएसपी.NET वेब अनुप्रयोग परियोजनाओं के लिए असेंबली & नियंत्रण संदर्भ प्रबंधन पर युक्तियों की तलाश में हूं।

उत्तर

2

चूंकि असेंबली बीआईएन फ़ोल्डर में आयात नहीं की गई थी, और आपका एप्लिकेशन काम करता है, मुझे लगता है कि यह जीएसी (ग्लोबल असेंबली कैश) में संग्रहीत है और संदर्भ गुणों में "स्थानीय = झूठी प्रतिलिपि" के रूप में चिह्नित है। आपको web.config में असेंबली का संदर्भ नहीं दिखाई देता है, क्योंकि असेंबली के पीछे आपका कोड - YourApp.dll (जो हमेशा वेब-अनुप्रयोगों के लिए बनाया जाता है) में उस असेंबली के मानक असेंबली संदर्भ होते हैं। जब आप अपना आवेदन चलाते हैं तो यह जीएसी से असेंबली लोड करता है।

1

उन "गायब" डीएलएस शायद Global Assembly Cache में हैं और सभी .NET अनुप्रयोगों के लिए उपलब्ध हैं।

आप web.config के pages/controls section पर नियंत्रण संदर्भ जोड़ सकते हैं, जो एप्लिकेशन के सभी पृष्ठों पर लागू होगा।

3

अधिकांश विजुअल स्टूडियो परियोजनाओं की तरह, परियोजना में संदर्भ रखा जाता है।

परियोजना संदर्भ में एक ही समाधान में एक अन्य परियोजना के लिए संदर्भ:

संदर्भ के दो प्रकार होते हैं। वे इस तरह दिखेगा:

<ProjectReference Include="..\VBClassLibrary1\VBClassLibrary1.vbproj"> 
    <Project>{045D7D9F-8E44-4C4B-95F8-620E86593C5B}</Project> 
    <Name>VBClassLibrary1</Name> 
</ProjectReference> 

फ़ाइल संदर्भ डिस्क पर एक मनमाना फ़ाइल के लिए संदर्भ:

<Reference Include="System.Core"> 
    <RequiredTargetFramework>3.5</RequiredTargetFramework> 
</Reference> 

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

<Private>False</Private> 
संबंधित मुद्दे