Press Ctrl / CMD + C to copy this to your clipboard.
This post will be reported to the moderators as potential spam to be looked at
Dear Courier Folk,
( Note that this has also been posted to http://eureka.ucommerce.net/#!/question/2149/DLL-Hell-Error-with-fresh-install-of-uCommerce-with-Umbraco-Courier#top )
I am trying to complete an installation of Umbraco version 7.5.10 assembly: 1.0.6261.14290 with Umbraco Courier 3.0.5 and uCommerce 22.214.171.12440.
It appears that uCommerce requires FluentNHibernate.dll 126.96.36.199 & NHibernate.dll 188.8.131.5200 and places both these files in the bin/ucommerce folder.
It also appears that Umbraco Courier requires FluentNHibernate.dll 184.108.40.206 and NHibernate.dll 220.127.116.1100.
This conflict results in errors such as
………. Could not load all types from "Umbraco.Courier.Persistence.V7.NHibernate, Version=18.104.22.16868, Culture=neutral, PublicKeyToken=null" due to LoaderExceptions, skipping:
………. . System.IO.FileLoadException: Could not load file or assembly 'FluentNHibernate, Version=22.214.171.124, Culture=neutral, PublicKeyToken=8aa435e3cb308880' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
In attempting to fix this using the technique described at http://maffrigby.com/using-different-versions-of-the-same-dll-in-a-project/ I have placed a copy of FluentNHibernate.dll 126.96.36.199 both in /bin and in the folder \AppData\TTDLLStore\FluentNHibernate\1400 and a copy of NHibernate.dll 188.8.131.5200 both in /bin and in folder \AppData\TTDLLStore\NHibernate\3414000 and then set a VS Project “Reference” to each of these files referencing the locations in \AppData\TTDLL_Store.......
However, as or immediately after, setting the References (before re-compiling or running) the following occurred which I do not understand:
(1) After setting the Reference, If I look at the Reference Properties the “Path” for these two references is not to \AppData\TTDLL_Store....... as I would expect but they are as follows:
a. For FluentNHibernate: D:\Clancy\ATeraTastic\Dev\TeraTastic12\TeraTastic\AppData\TEMP\uCommerceAppsAssemblyShadowCopy\CBD7D79B268E90FABDB51E1D723E73EA\FluentNHibernate.dll
b. For NHibernate: D:\Clancy\ATeraTastic\Dev\TeraTastic12\TeraTastic\AppData\TEMP\uCommerceAppsAssemblyShadowCopy\1288316830C34B11D342F74AF567C561\NHibernate.dll
(2) Both these DLLs in the bin folder is overwritten with the (newer) uCommerce versions
I note that the Reference Path includes uCommerceAppsAssemblyShadowCopy.
So my questions are
(1) What is “uCommerceAppsAssemblyShadowCopy” and how does it work ?
(2) Why does by older (Courier) version of these DLLs in /bin keep getting overwritten with the newer (uCommerce) versions ?
(3) Any suggestions as to how to make these DLLs of different version numbers work side by side would be appreciated.
Any help much appreciated.
For completeness sake there's an answer up on Eureka at http://eureka.ucommerce.net/#!/question/2149/DLL-Hell-Error-with-fresh-install-of-uCommerce-with-Umbraco-Courier
is working on a reply...
Write your reply to:
Image will be uploaded when post is submitted