2009-06-29 10 views
26

में मौजूद है। मेरे पास .NET 3.5 ढांचे में 1 डीएलएल और 2.0 में दूसरा है। ListBoxItem कक्षा 2.0 में मौजूद है और मैंने उसी नामस्थान में 3.5 डीएलएल में कक्षा को जोड़ा है।टाइप <type> दोनों DLLs

जब मैं संकलित करने का प्रयास करता हूं तो मुझे "दोनों में मौजूद" त्रुटि मिलती है। मैं इसे कैसे संकलित कर सकता हूं और उसी संरचना को बनाए रख सकता हूं।

मैं इस समस्या को खत्म करने के लिए 2.0 डीएलएल 3.5 को संदर्भित नहीं करना चाहता, मैं इन डीएलएल को अलग रखना चाहता हूं।

उत्तर

5

यह कोई अच्छा विचार नहीं लगता है, लेकिन नामस्थानों को बदलें और पूरी तरह से अपने उपयोग को अर्हता प्राप्त करें।

अन्यथा, आप केवल एक डीएल का संदर्भ क्यों नहीं देते?

+0

यदि मैं नामस्थान बदलता हूं तो इस 2 डीएलएस का उपयोग उसी विधि में नहीं किया जा सकता है क्योंकि 2 अलग-अलग हस्ताक्षर होते हैं। – pedrofernandes

+0

मुझे 3.5 डीएल में इंस्टेंस 2.0 डीएल नहीं चाहिए क्योंकि 2.0 डीएल में बड़े संदर्भ जोड़े गए हैं और जब मैं संकलित करता हूं तो यह 2.0 में मेरे 3.5, 2.0 डीएलएस को सभी संदर्भित डीएलएस संकलित करता है, जिसके लिए मेरे पास 15 डीएलएस हो सकते हैं जब मेरे पास केवल 2 हो सकते हैं डीएलएस मेरे बिन फ़ोल्डर im। – pedrofernandes

+0

आपको पिछले कुछ पदों में अंग्रेजी को फिर से काम करने की आवश्यकता है। मेरे पास कोई सुराग नहीं है कि आप क्या कह रहे हैं। शायद यह सब एक डीएलएल बनाओ? –

2

उन्हें दो अलग-अलग समाधानों में विभाजित करें, एक .NET 2.0 के लिए और दूसरा .NET 3.5 के लिए। अन्यथा, .NET जानता है कि किसको लोड करना है?

+0

ठीक है मेरे पास है। लेकिन जब मैं संदर्भित इस 2 डीएलएस के साथ एक वेब प्रोजेक्ट बनाता हूं, तो इरॉस आ रहा है। – pedrofernandes

+0

समाधान! = परियोजनाएं। –

+0

हां यह सच है। मुझे मूर्ख बनाया। – pedrofernandes

6

यह एक प्रासंगिक समाधान के रूप में अच्छी तरह से है, जहां आप किस प्रकार अपने usings में उपयोग करने के लिए परिभाषित कर सकते हैं है:

https://stackoverflow.com/a/9194582/178620

आप पूरी तरह से योग्य नामों का उपयोग नहीं कर सकते हैं जब विस्तार के तरीकों और आदि

के साथ काम
+0

आप विस्तार विधियों को संदर्भित करने के लिए पूरी तरह से योग्य नामों का उपयोग कर सकते हैं, लेकिन केवल तभी यदि आप उन्हें सीधे और एक्सटेंशन के बजाय कॉल करते हैं। –

2

पुराना धागा लेकिन यह मुद्दा एक और उदाहरण में जोड़ना चाहता था जहां यह समस्या हुई। विज़ुअल स्टूडियो 2010 में वेबसाइट से वेब एप्लिकेशन में कनवर्ट किए गए एक प्रोजेक्ट के साथ डेलिंग कर रहा था। मैंने टाइप "क्लास" दोनों में मौजूद होना शुरू किया .../अस्थायी एएसपी.नेट/... याडा ... याडा ... बेकार।

मेरे मामले में, पुराने पृष्ठ ने तारीखों की एक सूची प्रदर्शित करने के लिए डेटाग्रिड का उपयोग किया था, लेकिन डेटासेट List<MyClass> कक्षाओं की एक सूची थी और .aspx (कोड पीछे नहीं) में कोड डेटा आइटम कास्टिंग करने की पद्धति का उपयोग कर रहा था प्रदर्शन के लिए ...

<%# ((MyClass)Container.DataItem).MyDate %> 

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

<%# DataBinder.Eval(Container.DataItem, "MyDate").ToString()%> 

और voila ... कोई और प्रकार त्रुटि मौजूद नहीं है। नहीं भी यकीन है कि क्यों यह उपरोक्त त्रुटि ही (और अगर किसी को भी किसी भी जानकारी है, यह सराहना की होगी) लेकिन समस्या यह चला गया है प्रकट करने के लिए कारण होगा ...

आशा इस कोई मदद करता है ...

डेव

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