Solving mismatched Aspose dll versions

Hi,
From what I’ve read, GroupDocs bundles the versions of Aspose it needs within itself and unpacks them if they are missing at runtime (link to one of your support cases).
This works fine if GroupDocs is on its own, however, in my project I need to use both GroupDocs.Comparison and several other Aspose products (Words, Cells, Pdf, etc.) at the same time.

Forming an example with the latest versions at the time of writing:

  • Aspose.Words v21.4.0
  • GroupDocs.Comparison v21.3.0 — with embedded —> Aspose.Words v20.3.0

Example 1 - Only GroupDocs

  • GroupDocs.Comparison v21.3.0 exists as a dependency.
  1. “Compare” is called for the first time.
  2. Aspose.Words doesn’t exist and is unpacked.
  3. Aspose.Words v20.3.0 is used to perform the compare.
  4. Success.

Example 2 - GroupDocs and Aspose.Words

  • GroupDocs.Comparison v21.3.0 exists as a dependency.
  • Aspose.Words v21.4.0 exists as a dependency.

– GroupDocs –

  1. “Compare” is called for the first time.
  2. Aspose.Words v21.4.0 is used to perform the compare.
  3. Failure due to mismatch in version (TypeLoadException: 'Could not load type ‘Aspose.Words.LoadOptions’ from assembly 'Aspose.Words, Version=21.4.0.0 …)

– Aspose –

  1. Open and save a Word document for the first time.
  2. Aspose.Words v21.4.0 is used to perform the compare.
  3. Success.

Example 3 - GroupDocs and Aspose.Words with downgraded aspose version
This technically works, but then I would be using outdated versions of the Aspose products.
Since the parts using Aspose could be reliant on the newest version for bug fixes etc. it is not acceptable to be limited to the version supported by GroupDocs.

Question
This has been a reoccurring issue for me, and judging by how common this issue seems to be after a quick search on your support forum, you surely must have a workable solution.
Previously I have been forced to keep the GroupDocs and Aspose versions in sync, but this is not a fix for the long run. It is not acceptable for GroupDocs to limit which versions of Aspose I can use in other parts of the application (due to the inability to react to critical bug fixes).

I have seen a few different way of handling this issue, however, most of them have been temporary.
How do you recommend I handle this in the long run to avoid this ever being an issue again?

Some info about my current setup

  • Aspose and GroupDocs are in a .NET Standard 2.0 project.
  • Used from a .NET Framework 4.8 WebForms project.

Hello @lars.olsson thanks for you request.

We’ve created an investigation ticket COMPARISONNET-2665. We will investigate your problem and notify you once we’ll have any solution.

Hi, are there any updates on this issue?

Br
Lars

Hello @lars.olsson we still have no appropriate solution for this. Will continue investigation and notify you once we’ll have anything to report