2012-03-20 8 views
38

में काम नहीं कर रहा है मुझे कई परियोजनाओं के साथ समाधान मिला है और सभी उनमें से एक व्यवहार कर रहा है। जो काम नहीं कर रहा है वह एक कंसोल एप्लीकेशन है, और यह सी # क्लास लाइब्रेरी प्रोजेक्ट पर निर्भर करता है। मैंने लाइब्रेरी प्रोजेक्ट का संदर्भ जोड़ा है, और नेमस्पेस (जिसे मैंने चेक किया है सही है) जोड़ें, लेकिन हर जगह मैं अपनी लाइब्रेरी में कक्षाओं का संदर्भ देता हूं, मुझे लगता है:प्रोजेक्ट संदर्भ VisualStudio2010

टाइप या नेमस्पेस 'माइक्लास' नहीं मिला (क्या आप एक प्रयोग निर्देश या असेंबली संदर्भ खो रहे हैं?)।

लाइब्रेरी प्रोजेक्ट सफलतापूर्वक निर्माण कर रहा है (मैं बिन फ़ोल्डर में डीएलएल दिखाई दे सकता हूं) और मैंने एक परियोजना संदर्भ की कोशिश की है, और डीएलएल के संदर्भ भी है। न तो काम करता है।

इसके अलावा, सभी परियोजनाएं 'किसी भी CPU' के प्लेटफ़ॉर्म लक्ष्य के साथ निर्माण करने के लिए सेट हैं।

मैंने बिना किसी सफलता के फ़ोरम पर आने वाले हर सुझाव की कोशिश की है। क्या कोई गलत हो रहा है पर कुछ प्रकाश डाल सकता है?

धन्यवाद

यह समस्या हल हो:

सांत्वना आवेदन, .NET Framework 4 Client Profile का एक लक्ष्य ढांचा था जबकि पुस्तकालय सिर्फ .NET Framework 4 था। मैंने कंसोल ऐप को .NET Framework 4 पर सेट किया है और यह सब पूरी तरह से बनाता है।

+1

बस मेरे दो सेंट। सी # केस संवेदनशील है। क्या आपने अपना नेमस्पेस केस चेक किया है? – Steve

+0

क्या कक्षा में सार्वजनिक निर्माता है? –

+0

नीचे एंटाओ के उत्तर पर एक नज़र डालें - हम नियमित रूप से देखते हैं कि गिट हमारी परियोजना फ़ाइलों को गड़बड़ कर देता है। – increddibelly

उत्तर

83

मेरे शर्त अपने पुस्तकालय और आप अनुप्रयोग के बीच एक रूपरेखा बेमेल पर है ... जांच करें कि आपकी लायब्रेरी एप्लिकेशन को आप की तुलना में एक बेहतर संस्करण के साथ निर्माण नहीं है, या आपके एप्लिकेशन एक ग्राहक प्रोफ़ाइल स्वाद के साथ बनाने जा रहा है, तो

+0

हाँ, आप स्पॉट पर थे, मैंने नीचे एक पूर्ण उत्तर दिया है - सुझावों के लिए धन्यवाद Cedric – Richard

+7

सभी को धन्यवाद, वह जल्दी था! :) हां, कंसोल एप्लिकेशन में .NET Framework 4 क्लाइंट प्रोफाइल का लक्ष्य ढांचा था, जबकि लाइब्रेरी में अभी .NET Framework 4 था। मैंने कंसोल ऐप को ".NET Framework 4" पर सेट किया है और यह सब पूरी तरह से बनाता है। मैंने त्रुटि के शब्द को देखते हुए ऐसा नहीं देखा होगा कि युक्तियों के लिए धन्यवाद। मुझे लगता है कि यह उन गलतियों में से एक है जिसे आप केवल एक बार बनाते हैं और इसे अगली बार याद करते हैं (...?) धन्यवाद! – Richard

+0

ओह, हालांकि मैं इसे हल करने की कोशिश कर रहा एक पूरा दिन बिताता हूं, और फिर आप हैं: डी –

3

शायद यह है कि आपके डीएलएल में से एक .net फ्रेमवर्क का कुछ हिस्सा संदर्भित करता है जिसे आपके कंसोल एप्लिकेशन में संदर्भित नहीं किया गया है। उदाहरण के लिए यदि आपकी कक्षा लाइब्रेरी प्रोजेक्ट्स में से एक में एएसपीनेट सर्वर सिस्टम सिस्टम में नियंत्रण और संदर्भ देता है, लेकिन आपका कंसोल एप्लिकेशन सिस्टम.Web का संदर्भ नहीं देता है, तो यह निर्माण नहीं करेगा और आपको वह त्रुटि मिल जाएगी। लेकिन यह स्पष्ट नहीं है क्योंकि संदर्भित डीएलएल जीएसी में संग्रहीत हैं ताकि वे आपके बिन फ़ोल्डर में कभी दिखाई न दें।

+0

मुझे लगता है कि आप सही हैं बेन, मैंने नीचे एक पूरा उत्तर जोड़ा है - मदद – Richard

+0

मदद के लिए धन्यवाद मुझे आश्चर्य है कि आपके पास अधिक अपवॉट्स क्यों नहीं हैं –

1

अजीब लगता है,

क्या आपने प्रोजेक्ट के संदर्भ को हटाने और इसे फिर से जोड़ने का प्रयास किया है? जांचें कि क्या आपके कंसोल ऐप को सभी सही संदर्भ मिल गए हैं।

आप .csproj फ़ाइल का भी निरीक्षण कर सकते हैं और देख सकते हैं कि सब कुछ ठीक है या नहीं।

0

बस जांचें कि आप "कक्षा पुस्तकालय" प्रोजेक्ट में कक्षाएं हैं या यदि यह डेटा एक्सेस लेयर प्रोजेक्ट है जिसमें केवल एक .edmx मॉडल शामिल है मॉडल डिजाइनर को मिला है और यह ठीक उत्पन्न करता है।

अच्छी किस्मत

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