मैं जब मैं (संकलन समय पर नहीं) मेरी अनुप्रयोग चलाने के इस त्रुटि हो रही है:एक विशिष्ट निर्भरता के विशिष्ट संस्करण पर निर्भर करता है कि कैसे ढूंढें?
फ़ाइल या विधानसभा 'Castle.Windsor, संस्करण = 2.1.0.0, संस्कृति = तटस्थ लोड नहीं कर सका, PublicKeyToken = 407dd0808d44fbdc 'या इसकी निर्भरताओं में से एक। स्थित असेंबली की स्पष्ट परिभाषा असेंबली संदर्भ से मेल नहीं खाती है। (HRESULT से अपवाद: 0x80131040)
मेरे समाधान कई परियोजनाओं, परियोजना संदर्भ जहां संभव का उपयोग करते हुए है, लेकिन उन परियोजनाओं में से कुछ विधानसभा बाहरी निर्भरता के लिए संदर्भ की है।
मैं आसानी से यह पता कैसे लगा सकता हूं कि कौन सा प्रोजेक्ट Castle.Windsor.dll
के इस विशिष्ट संस्करण की तलाश में है? मेरे पास वह संस्करण नहीं है और मैं 2.5.2 (नवीनतम) का उपयोग करने की कोशिश कर रहा हूं, इसलिए मैं अपराधी को ढूंढना चाहता हूं और इसे नवीनतम उपयोग करने के लिए अपडेट करना चाहता हूं।
अग्रिम में बहुत धन्यवाद।
अद्यतन
मैं एक स्वच्छ फ्यूजन लॉग नीचे जोड़ दिया है। ऐसा लगता है कि Caliburn.Castle
को Castle.Windsor, Version=2.1.0.0
की आवश्यकता है (जो एक गलती होगी क्योंकि मैं 2.5 का उपयोग कर रहा हूं), लेकिन फ़्यूज़न असेंबली जांच वास्तव में Castle.Windsor, Version=2.5.1.0
खोजने के रूप में जांच रही है।
क्या मुझे यह सही ढंग से समझा गया है?
=== Pre-bind state information ===
LOG: User = Barney\neil
LOG: DisplayName = Castle.Windsor, Version=2.1.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc
(Fully-specified)
LOG: Appbase = file:///[Debug folder of my exe]
LOG: Initial PrivatePath = NULL
LOG: Dynamic Base = NULL
LOG: Cache Base = NULL
LOG: AppName = [Filename of my exe]
Calling assembly : Caliburn.Castle, Version=1.1.0.0, Culture=neutral, PublicKeyToken=8e5891231f2ed21f.
===
LOG: This bind starts in default load context.
LOG: Using application configuration file: [Config file for my exe]
LOG: Using host configuration file:
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config.
LOG: Post-policy reference: Castle.Windsor, Version=2.1.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc
LOG: GAC Lookup was unsuccessful.
LOG: Attempting download of new URL file:///[Debug folder of my exe]/Castle.Windsor.DLL.
LOG: Assembly download was successful. Attempting setup of file: [Debug folder of my exe]\Castle.Windsor.dll
LOG: Entering run-from-source setup phase.
LOG: Assembly Name is: Castle.Windsor, Version=2.5.1.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc
WRN: Comparing the assembly name resulted in the mismatch: Minor Version
ERR: The assembly reference did not match the assembly definition found.
ERR: Failed to complete setup of assembly (hr = 0x80131040). Probing terminated.
आप सही हैं, Castle.Windsor का एक नया संस्करण पाया जा रहा है, लेकिन Caliburn.Castle एक पुराना संस्करण चाहता है। – Pedro
@ पेड्रो हाँ, मैंने तब से Caliburn.Castle.dll को देखने के लिए परावर्तक का उपयोग किया है, और पाया है कि इसे 2.1. Castlesor.dll (मुझे स्रोत से पुनर्निर्माण के बावजूद) की आवश्यकता है। मेरे पास Caliburn.Castle.dll को एक अद्यतन कैसल के साथ बनाने और फिर से प्रयास करने के लिए एक और जाना होगा। :) –