मेरा अनुमान है कि आप दृढ़ता से नामित विधानसभाओं के साथ काम नहीं कर रहे हैं। जब दो प्रोजेक्ट्स एक ही असेंबली के थोड़े अलग संस्करण और एक अधिक आश्रित प्रोजेक्ट रेफरेंस इन प्रोजेक्ट्स को रेफर करते हैं, तो मुझे यह त्रुटि आई है। मेरे मामले में रिज़ॉल्यूशन असेंबली के नाम और संस्करण की जानकारी को .csproj फ़ाइलों (यह वैसे भी कोई फर्क नहीं पड़ता) को हटाने के लिए था, और फिर एक क्लीन बिल्ड करें।
अलग-अलग असेंबली संस्करणों के बीच परिवर्तन उन्हें संदर्भित करने वाले समाधान के कुछ हिस्सों के साथ संगत थे। यदि आपके साथ ऐसा नहीं है, तो आपको समस्या को हल करने के लिए कुछ और काम करने पड़ सकते हैं।
NuGet
NuGet के साथ इस स्थिति में आना आसान है अगर:
- आप अपने समाधान में एक परियोजना के लिए एक पैकेज स्थापित करते हैं।
- उस पैकेज का एक नया संस्करण पैकेज स्रोत पर तैनात किया गया है।
- आप इसे उसी समाधान में किसी अन्य प्रोजेक्ट पर स्थापित करते हैं।
इससे आपके समाधान में दो परियोजनाओं का परिणाम उस पैकेज की असेंबली के विभिन्न संस्करणों को संदर्भित करता है। यदि उनमें से एक दूसरे को संदर्भित करता है और एक क्लिकऑन ऐप है, तो आप इस समस्या को देखेंगे।
इसे ठीक करने के लिए, update-package [package name]
Nuget Package Manager कंसोल पर कमांड को एक स्तर के खेल मैदान तक लाने के लिए, जिस पर समस्या दूर हो, उसे जारी करें।
जब तक कि कोई सम्मोहक कारण न हो, आपको प्रोजेक्ट स्तर के बजाय समाधान स्तर पर NuGet संकुल का प्रबंधन करना चाहिए। समाधान स्तर पैकेज प्रबंधन निर्भरता के कई संस्करणों की क्षमता से बचा जाता है। यूआई प्रबंधन का उपयोग करते समय, यदि समेकित टैब दिखाता है कि 1 या अधिक पैकेज में कई संस्करण हैं, तो उन्हें एक पर समेकित करने पर विचार करें।
bin
औरobj
फ़ोल्डरों को हटा दें , और फिर से परियोजना का निर्माण करें। कभी-कभी यह काम करता है।