2017-05-29 14 views
8

मुझे पता है कि एक ही समस्या के साथ एक और सवाल है, लेकिन मैं उन सभी उत्तरों को कम कर देता हूं, और मेरे लिए कोई भी मदद नहीं करता :(यह सवाल था: Metadata file '.dll' could not be foundवीएस 2017 मेटाडाटा फ़ाइल '.dll नहीं मिला

मैं सिर्फ एक नया ASP.NET MVC परियोजना बनाया है और समाधान में कुछ '.dll के शामिल हो गए। अब जब मैं इस परियोजना मैं पर 5 पुस्तकालयों में से 3 में नीचे दिखाया गया त्रुटि संदेश मिलता है निर्माण करने के लिए प्रयास करें।

Error CS0006 Metadata file 'C:\Users\...\source\Database\bin\Debug\DataAccessLayer.dll' could not be found Logic C:\Users\...\source\Logic\CSC 1 Active 

Error CS0006 Metadata file 'C:\Users\...\source\Logic\bin\Debug\Logic.dll' could not be found PTS2-MVC C:\Users\...\source\PTS2-MVC\CSC 1 Active 

Error CS0006 Metadata file 'C:\Users\...\source\PTS2-MVC\bin\PTS2-MVC.dll' could not be found PTS2-MVC.Tests C:\Users\...\source\PTS2-MVC.Tests\CSC 1 Active 

जब मैं उस .dll के bin \ debug फ़ोल्डर में जाता हूं, तो मुझे लगता है कि यह खाली है, और दूसरा। Dll जहां मुझे कोई त्रुटि संदेश नहीं मिलता है, खाली नहीं है। लेकिन मुझे यह पता नहीं है कि इसे कैसे ठीक किया जाए याऐसा करने के लिए मैंने क्या किया। >लागू - -

सबसे आम जवाब समाधान की गुण के पास जाकर विन्यास और अचिह्नित करने के लिए जाना है>जांच और फिर लागू होते हैं, लेकिन यह है कि didn काम नहीं

+0

बस एक अनुमान है, लेकिन ऐसा लगता है जैसे वीएस ने उन्हें साफ़ किया। मुझे यकीन नहीं है कि वे डीएल क्या हैं या वे कहां से हैं, लेकिन यदि आप उन्हें बनाते हैं तो मैं सुनिश्चित करता हूं कि वे जो भी समाधान बनाएंगे, उन्हें बनाया जाए। यदि ये फ़ोल्डर्स आपके वर्तमान समाधान के निर्माण से हैं तो यह आपके समाधान को फिर से साफ करने के बाद इन्हें नहीं ढूंढ पाएगा। – TheNoob

+0

स्वच्छ^पुनर्निर्माण || अपने दृश्य को पुनरारंभ करें, फिर से जांचें –

+0

@AsifRaza मैंने पहले से ही कई बार ऐसा किया है, लेकिन मेरे साथ सोच रहा है :) – Svenmarim

उत्तर

9

ओके, मैंने इसे अभी तय किया है, समस्या यह थी कि मेरे पास मेरे प्रोजेक्ट में कुछ अन्य सामान्य त्रुटि संदेश थे, और जाहिर है कि मैंने उनको ठीक करने के बाद और जब मैंने अपनी परियोजना को फिर से साफ और बनाया, सभी .dlls सफल: डी

तो भविष्य में इस समस्या के साथ अन्य लोगों के लिए: सुनिश्चित करें कि आपके पास अपनी परियोजना में कोई अन्य त्रुटि संदेश नहीं है और यदि आप करते हैं, तो पहले उन्हें ठीक करें!

मैं आपकी मदद करने के लिए सभी को धन्यवाद देना चाहता हूं!

+1

जांचें, वास्तव में मुझे एक ही समस्या थी, लेकिन इसमें कोई अन्य त्रुटि दिखाई नहीं दे रही थी, केवल अनुपलब्ध .dll के बारे में 1 त्रुटि थी। लेकिन फिर किसी बिंदु पर (बिना किसी कोड को बदलने के), अचानक एक वाक्यविन्यास त्रुटि दिखाई दी जो पहले दिखाई नहीं दे रहा था। एक बार मैंने उस त्रुटि को ठीक कर लिया, तो जैसे आपने कहा, मैंने साफ किया, पुनर्निर्मित किया, और सब कुछ काम किया। – jbyrd

+1

यहां एक ही समस्या है।त्रुटि सूची विंडो में एक बग प्रतीत होता है जहां त्रुटियां कभी-कभी दिखाई नहीं देती हैं (और अन्य बार त्रुटियों को ठीक/पुनर्निर्माण करने के बावजूद दिखाया गया था)। आउटपुट विंडो अधिक विश्वसनीय है इसलिए जब आप इस समस्या में भाग लेते हैं तो वहां जांचें। – Santosh

3

इस त्रुटि को ठीक करने में चरण: मेटाडेटा फ़ाइल। डीएल नहीं मिला।

  1. सभी परियोजनाओं को साफ़ करें।

  2. सभी परियोजनाएं अनलोड करें।

  3. सभी परियोजनाओं को दोबारा लोड करें।

  4. रीबिल्ड समाधान।

फिर समस्या हल हो गई।

0

अपने प्रोजेक्ट फ़ोल्डर का नाम दो बार जांचें। मेरे मामले में मेरे प्रोजेक्ट फ़ोल्डर को रिक्त स्थान के साथ नामित किया गया था। जब मैंने गिट बैश का उपयोग करके टीम फाउंडेशन सर्वर से परियोजना को क्लोन किया तो फ़ोल्डर नाम में रिक्त स्थान को "% 20" में परिवर्तित कर दिया गया। उन जगहों पर वापस स्थानांतरित करने से मेरे लिए समस्या ठीक हो गई।

2

मुझे इस समस्या का समाधान कई परियोजनाओं वाले समाधान के साथ था।

मुझे लगता है कि यह .csproj डुप्लिकेट करने और समाधान में प्रतिलिपि जोड़ने से आया था। एक .csproj फ़ाइल में <ProjectGuid> तत्व शामिल है। मैंने कॉपी किए गए प्रोजेक्ट का GUID एक नए पर सेट किया है।

मैं भी निम्नलिखित चरणों का प्रदर्शन किया:

  1. बंद समाधान
  2. हटाएँ बिन फ़ोल्डर
  3. सभी obj फ़ोल्डरों
  4. ओपन समाधान हटाएँ और
0

एक और बात यह है कि आप का निर्माण यह सुनिश्चित करने के लिए कि कॉलिंग प्रोजेक्ट इसका उपयोग कर रहा है, किसी भी संदर्भित परियोजनाओं का लक्ष्य ढांचा जांचना चाहिए या ढांचे के बाद के संस्करण।

मुझे यह समस्या थी, मैंने पहले सुझाए गए उत्तरों की कोशिश की और फिर एक झुकाव पर ढांचे की जांच की। संदर्भित परियोजनाओं में से एक 4.6.1 को लक्षित कर रहा था जब कॉलिंग प्रोजेक्ट केवल 4.5.2 था।

1

मुझे एक ही समस्या है, समस्या यह थी कि समाधान पथ में नाम और बनाम कुछ जगहों के लिए पैकेज को हल नहीं किया गया है ... मेरे भंडार को फिर से नाम में बाहर की जगहों के साथ समाधान का नाम बदलना।

जैसे:

/Repo/Project Name/src 

होना चाहिए

/Repo/ProjectName/src 
1

मेरे मामले में, वहाँ एक त्रुटि थी, लेकिन यह ठीक से वी.एस. द्वारा पार्स और नहीं दिखाया गया था "त्रुटि में सूची "विंडो। इसे खोजने के लिए, आप बिल्ड विंडो से ओल "आउटपुट" को बहुत अधिक देखते हैं और ऊपर से शुरू होने वाले संदेशों के माध्यम से पार्स और वास्तविक त्रुटि को हल करते हैं। एम $, कृपया ठीक करें! यह दुनिया सामूहिक डेवलपर्स के समय का एक बड़ा अपशिष्ट है।

0

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

0

बैश में इस आदेश का चल रहा है हटाने के लिए सभी डिब्बे मेरे लिए काम किया

$ find . -iname "bin" -o -iname "obj" | xargs rm -rf 

यह किसी और के लिए काम करेंगे गारंटी नहीं दे सकता है, हालांकि

भी अवगत यह सब बिन फ़ाइलें हटा देंगे हो - तो आपको सभी परियोजनाओं का पुनर्निर्माण करना होगा।

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