7

We are upgrading from Tridion 2009 to 2013 Sp1. We setup new Content Deployer targets and publishing is smooth after configuration.

We have few broker calls which are done using broker 2009.

When we replace Content Delivery dll with new 2013(x86_64) from installation package, code is compiled properly but we get following exception at Broker Call.

We have verified the dll version. It is : 7.1.0.165

We have carried out steps mentioned here

Any suggestions/help would be appreciated.

Could not load file or assembly 'Tridion.ContentDelivery, Version=5.4.0.170, Culture=neutral, PublicKeyToken=ddfc895746e5ee6b' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference.

5
  • The error says that it is trying to load the 5.4.0.170 but you should be using 7.1.0.165. Would you like to remove all references of older DLLs first (verify there is nothing in the AssemblyInfo.cs) file as well. Re-Reference it with the new DLL, Re-build the project and try again Mar 4, 2014 at 12:54
  • There are no such references for old dlls in AssemblyInfo.cs
    – user768
    Mar 4, 2014 at 13:01
  • 1) Did you clean your project before building 2) Did you ensure any other DLL that you are referencing is not referencing the older DLL 3) did you check the output folder does not already have the older version available Mar 4, 2014 at 13:06
  • Yes infact we have migrated code and started from new solution also we have already replaced Content Delivery dll at all references, recompiled those dlls and then added again to solution.
    – user768
    Mar 4, 2014 at 13:08
  • Check all of your web.config files to see if any of them reference the 5.4 version of the assemblies. Mar 4, 2014 at 15:20

4 Answers 4

3

Your .Net application is looking for the Tridion 2009 DLL Reference. Please modify the .Net Application (in Visual Studio) and reference the Tridion 2013 DLL. If you are using 64 bit Java then you would want to reference the 64 bit Tridion CD DLL. You can see your java version by running java -version at the command prompt.

As Pankaj suggests, if you're running 32 bit DLLs, you'll want to modify your app pool to allow 32 bit DLLs to run.

2
  • I have already referenced to Tridion.ContentDelivery 2013 64-bit dll and recompiled the code again.
    – user768
    Mar 4, 2014 at 13:25
  • And, is it working? The error message feels like the web app is trying to find (unsuccessfully) the Tridion 2009 reference. Maybe there's a web control in the project from 2009?
    – robrtc
    Mar 4, 2014 at 14:39
3

It has been solved. The issue here was the custom dll which also refering to the Tridion Content Delivery dll was not upgraded with .NET framework 4.0.

We changed the references for this dll with new Tridion Content Delivery dll but it was still compiled with .NET 3.5, that is the reason may be. But when we compiled this dll with .NET 4.0 and added again, it worked :)

2

Do following:

  • Open IIS Manager
  • Select Application Pools
  • Select the app pool you are using
  • Go to Advanced Settings
  • Toggle the flag of "Enable 32-bit application"
  • Try again
1

i have faced this kind of issue in past, one of section in my web.config was having reference of old dll. Please check whether your web.config has reference for Tridion.ContentDelivery, Version=5.4.0.170 somewhere in config.

2
  • We do not have any such version references
    – user768
    Mar 5, 2014 at 5:51
  • you mean in web.config of your delivery website you don't have any reference. you can try cleaning your solution and rebuild it.
    – Raj Kumar
    Mar 5, 2014 at 7:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.