मेरे पास एक कंसोल ऐप सी # प्रोजेक्ट है जो एनएचबेर्नेट 3.3.2 और शापआर्क.NHibernate 2.0.4.628 पर निर्भर करता है जिसे एनएचबीरनेट 3.3.1 के साथ संकलित किया गया है। (जहां तक मुझे पता है - मैं गलत हो सकता हूं, लेकिन जब मैंने 2.0.4 शार्प आर्च प्रोजेक्ट बनाया तो उसने Nuget के माध्यम से एनएच 3.3.1 डाउनलोड किया)।दृश्य स्टूडियो में प्रदर्शित डीएल संस्करण। संदर्भित डीएलएल फ़ाइल/उत्पाद संस्करणों को प्रतिबिंबित नहीं करते
विज़ुअल स्टूडियो एनएचबीर्नेट को संस्करण 3.3.1.4000 के रूप में क्यों दिखाता है जब संदर्भित डीएल 3.3.2.4000 है? विशिष्ट संस्करण गुण सभी संदर्भों के लिए गलत पर सेट है। और SharpArch का संस्करण 2.0.4 के बजाय वीएस 2.0.0.0 में प्रकट होता है जो फ़ाइल/उत्पाद संस्करण है।
एप्लिकेशन config में मेरे पास है:
System.IO.FileLoadException was unhandled
Message=Could not load file or assembly 'NHibernate, Version=3.3.2.4000, Culture=neutral, PublicKeyToken=aa95f207798dfdb4' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
Source=MyApp.ResourcesGenerator
FileName=NHibernate, Version=3.3.2.4000, Culture=neutral, PublicKeyToken=aa95f207798dfdb4
FusionLog=""
StackTrace:
at MyApp.ResourcesGenerator.Program.InitializeNHibernateSession()
at SharpArch.NHibernate.NHibernateInitializer.InitializeNHibernateOnce(Action initMethod) in d:\Builds\SharpArch2\Solutions\SharpArch.NHibernate\NHibernateInitializer.cs:line 54
at MyApp.ResourcesGenerator.Program.Initialize() in C:\projects\tc\Trunk\Source_LibsUpgrade\Applications\PerformanceManagement\MyApp.ResourcesGenerator\Program.cs:line 149
at MyApp.ResourcesGenerator.Program.Main(String[] args) in C:\projects\tc\Trunk\Source_LibsUpgrade\Applications\PerformanceManagement\MyApp.ResourcesGenerator\Program.cs:line 31
at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
InnerException: System.IO.FileLoadException
Message=Could not load file or assembly 'NHibernate, Version=3.3.0.4000, Culture=neutral, PublicKeyToken=aa95f207798dfdb4' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
FileName=NHibernate, Version=3.3.0.4000, Culture=neutral, PublicKeyToken=aa95f207798dfdb4
मैं भी यकीन है कि क्यों यह 3.3.0.4000 लोड करने के लिए जब तेज वास्तुकला किया गया है कोशिश कर रहा है नहीं कर रहा हूँ:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="NHibernate" publicKeyToken="aa95f207798dfdb4" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.3.1.4000" newVersion="3.3.2.4000" />
</dependentAssembly>
</assemblyBinding>
</runtime>
अनुप्रयोग के साथ लोड करने के लिए विफल रहता है 3.3.1 के साथ संकलित।
कोई इच्छा किसी व्यक्ति की संपत्ति सूची में फ़ाइल संस्करण दिखाने के लिए वीएस एक्सटेंशन बनायेगी। –
अब के लिए मैं हमेशा .NET परावर्तक का उपयोग करता हूं जो हमेशा मुझे संस्करण के साथ-साथ डीएलएस के संस्करणों को दिखाता है जो डीएल निर्भर करता है – costa