The located manifest definition dows not match the assembly reference.

Posts   
 
    
cwest
User
Posts: 29
Joined: 13-May-2007
# Posted on: 02-Dec-2007 01:01:07   

I'm using MySql direct v. 4.25.22.0 w/ llbl v. 2.5 and I' having an issue deploying the project.

The project runs fine on my development machine but when I deploy to other machines I get this error:

"Could not load file or assembly 'CoreLab.MySql, Version 4.0.9.0 ... The located manifest definition dows not match the assembly reference. "

The dll version in the deployed app is version 4.25.22.0 and there are no corelab assemblies in the GAC.

My Previous builds were using the 30 day trial (and that was working). I've uninstalled the trial version, and in my VS project I reference the dlls provided with the purchased corelabs installation.

Is there somthing I don't know about LLBL that may be causing this issue? I can't find any reference to v. 4.0.9.0 anywhere on my development machine or the test machine. The version in the GAC on the dev machine is 4.25.22.0.

Ideas? I've also contacted Corelabs but their support lags. This would be my biggest complaint about LLBL - using Corelabs. Meh.

Otis avatar
Otis
LLBLGen Pro Team
Posts: 39897
Joined: 17-Aug-2003
# Posted on: 02-Dec-2007 10:59:34   

They should have a policy file in their install. I've told them that numerous times, and every time they seem to forget that one.

So you have to add a manual assembly redirect to the config file of your application. From 4.0.9.0 to 4.25.22.0. See for examples the llblgenpro.exe.config file.

Frans Bouma | Lead developer LLBLGen Pro
cwest
User
Posts: 29
Joined: 13-May-2007
# Posted on: 11-Dec-2007 16:29:32   

I'm still having issues with this after trying multiple things.

I've tried adding:

  <runtime>
    <dependentAssembly>
      <assemblyIdentity name="CoreLab.MySql" publicKeyToken="09af7300eec23701" culture="neutral" />
      <bindingRedirect oldVersion="4.0.9.0" newVersion="4.25.22.0"/>
    </dependentAssembly>
  </runtime>

To my app.config for my application & the generated DAL but I'm still getting the same error when I try to use the generated code.

The exception is coming out of SD.LLBLGen.Pro.DQE.MySql.NET20.

Any ideas of what I may be doing wrong?

goose avatar
goose
User
Posts: 392
Joined: 06-Aug-2007
# Posted on: 11-Dec-2007 20:06:08   

This is what I normally do when I move to another version of corelabs: try opening the source code project of SD.LLBLGen.Pro.DQE.MySql.NET20 and SD.LLBLGen.Pro.ORMSupportClasses, and remove the old corelab reference an put the new one instead, then recompile and replace the resulting dll's where you need to.

cwest
User
Posts: 29
Joined: 13-May-2007
# Posted on: 11-Dec-2007 21:52:17   

Where do I get the source code for these projects? I couldn't find it in the install dirs or online.

Walaa avatar
Walaa
Support Team
Posts: 14995
Joined: 21-Aug-2005
# Posted on: 12-Dec-2007 10:30:34   

If this is not a Demo package: [LLBLGen Pro installation Folder]\RuntimeLibraries\Sourcecode

cwest
User
Posts: 29
Joined: 13-May-2007
# Posted on: 13-Dec-2007 06:22:12   

I rebuilt and referenced the MySqlDQE with no luck. The MySqlDQE project already referenced the same versions of the core labs dlls that I'm using so I really didn't expect much.

Short of formatting my drive and starting over with a fresh core labs install I really don't know what to do at this point. I'm close to just cutting my losses at $99 and ~30 hours of lost time.

Otis avatar
Otis
LLBLGen Pro Team
Posts: 39897
Joined: 17-Aug-2003
# Posted on: 13-Dec-2007 09:56:27   

You rebuild it with references to 4.25, and it gave the SAME error? Did you run fuslogvw.exe from the .NET SDK bin folder? to see where .net looks for the dll?

What did core-lab say? THEIR installer should install a policy file which redirects everything automatically.

Frans Bouma | Lead developer LLBLGen Pro
cwest
User
Posts: 29
Joined: 13-May-2007
# Posted on: 13-Dec-2007 16:32:57   

Otis - that's right. I'm completely baffeled by this. Fortunately, Corelabs finally got back to me this morning with this:


  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="CoreLab.MySql" publicKeyToken="09AF7300EEC23701" culture="neutral"/>
        <bindingRedirect oldVersion="0.0.0.0-4.25.22.0" newVersion="4.25.22.0"/>
      </dependentAssembly>
    </assemblyBinding>
  </runtime>

There's a couple of slight differences between this config entry and the one that I used. At any rate it works.

I'd still like to know why/where the reference to the 4.0.9.0 version is coming from, it's really odd. I'll look into the fusion log.

Otis avatar
Otis
LLBLGen Pro Team
Posts: 39897
Joined: 17-Aug-2003
# Posted on: 03-Jan-2008 17:41:23   

For reference: the 4.0.9.0 reference comes from our code. We build the driver and dqe against 4.0.9.0 so people don't have to upgrade their production systems or installed work if they download a newer build of the runtime or the drivers.

Frans Bouma | Lead developer LLBLGen Pro