How to resolve the DLL conflict issue?
Problem:
DLL Conflict issue between different versions of the same dependent assembly.
Cause:
.NET Framework related Syncfusion dependent assemblies’ version mismatch.
Solution:
Syncfusion dependent assemblies must be of the same version in the web.config file according to the project application framework. When the project application has reference to the Syncfusion DLL’s Syncfusion.EJ and Syncfusion.EJ.Export and when those DLLs are mentioned with different versions as given in the following code example, then the DLL Conflict arises.
web.config
<compilation debug="true" targetFramework="4.5.1"> <add assembly="Syncfusion.EJ, Version=12.4450.0.24, Culture=neutral, PublicKeyToken=3d67ed1f87d44c89" /> <add assembly="Syncfusion.EJ.Export, Version=12.4451.0.24, Culture=neutral, PublicKeyToken=3d67ed1f87d44c89" /> </compilation> |
The solution for this problem is that the Dependent assemblies must have the same version according to the .NET Framework.
web.config
// If targetFramework="4.5.1" <compilation debug="true" targetFramework="4.5.1"> <add assembly="Syncfusion.EJ, Version=12.4451.0.24, Culture=neutral, PublicKeyToken=3d67ed1f87d44c89" /> <add assembly="Syncfusion.EJ.Export, Version=12.4451.0.24, Culture=neutral, PublicKeyToken=3d67ed1f87d44c89" /> </compilation> // If targetFramework="4.5" <compilation debug="true" targetFramework="4.5"> <add assembly="Syncfusion.EJ, Version=12.4450.0.24, Culture=neutral, PublicKeyToken=3d67ed1f87d44c89" /> <add assembly="Syncfusion.EJ.Export, Version=12.4450.0.24, Culture=neutral, PublicKeyToken=3d67ed1f87d44c89" /> </compilation> |
The following table illustrates the Syncfusion DLL versions with the project framework and MVC versions.
MVC Versions | MVC DLL Version | Base DLL Version | Supported Frameworks |
MVC 3 | 12.4300.0.24 | 12.4400.0.24 | v4.0, v4.5, v4.5.1 |
MVC 4 | 12.4400.0.24 | 12.4400.0.24 | v4.0, v4.5, v4.5.1 |
MVC 5 | 12.4500.0.24 | 12.4450.0.24 | v4.5, v4.5.1 |
MVC 5 | 12.4500.0.24 | 12.4451.0.24 | v4.5.1 |
The base DLL versions in a project must be the same in order to avoid DLL Conflict issue.