i'm trying to have my own implementation of the CartHelper class. For that, I downloaded from this download's section site the package Mediachase.Commerce.Website which contains several classes I rely heavily, CartHelper among them.
Nuff said, from all my projects that had any dependence on this dll, I deleted it, add the downloaded Mediachase.Commerce.Website project to my solution and add the reference for all my projects. It compiles perfectly fine, but when trying to access my site, I get the following error:
System.IO.FileLoadException: Could not load file or assembly 'Mediachase.Commerce.Website, Version=18.104.22.168, Culture=neutral, PublicKeyToken=6e58b501b34abce3' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
No matter what I do, I can't make that library to replace the old one. I've tried cleaning and rebuilding, messing around with the web.config and modifying the section to try to match original version, modify projects' version to match the one downloaded from Nuget packages... But nothing seemed to work.
What can I do? How can I solve this issue and make use of my own implementation of this library?
Thank you and kind regards,
You have 2 options with regards to creating your own implementation og the CartHelper class.
1. Create your own class that inherits from CartHelper. With this approach you need to copy some internal methods.
2. Download the Website project and rename both the generated assembly and replace the namespace.
You might need to download the workflow projects as well and replace the use of CartHelper. Remember to chage namespaces and change the ecf.workflows.config
There is a dependency on a signed version of this assembly.