C # asp.net Support for multiple dll versions

I have a hellish version of dll:

  • ASP.Net project
    • WebGrease links
      • which refers to Antlr3.Runtime.dll 3.3.1.7705 [stored in the / bin / asp.net application folder]
    • Custom project links
      • which links to NCalc.codeplex.com
        • which is referenced by Antlr3.Runtime.dll 3.1.3.22795 [stored in / bin / CustomProject / asp.net application folder]

unsurprisingly, these two versions of Antlr do not work well together, and I get: "The installed build manifest definition does not match the build errors"

I do not want to modify the WebGrease project.

I am trying to update the NCalc project to use 3.3.1.7705, however I am struggling with this

Do you have any suggestions on how to get these two libraries working together?

EDIT , unfortunately, NCalc code is not compatible with the newer version of antlr, so I cannot use link redirection

thanks

+4
source share
1 answer

The NCalc submission may use a later version of Antlr3.Runtime - that is, there are no changes to change, you should be able to use a binding redirect to direct it to download a later version

for example, in the web.config file, something like

<runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="NCalc" publicKeyToken="xxxxxxxxx" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-3.1.3.0" newVersion="3.3.1.0" /> </dependentAssembly> </assemblyBinding> </runtime> 

I don't think the 4th digit is used in versions

0
source

Source: https://habr.com/ru/post/1488699/


All Articles