We had a bit of a dilemma at work today, we just sent a version of a web application we’ve been working on for the past few months to staging (testing) to our client. Our client mentioned a move to .NET 3.5 is pending on the boxes there and that they need to ensure the products we ship are compatible. Should be right?
We use the Microsoft Ajax Toolkit throughout the product in question, which is totally rad! The last version thats for .NET 2.0 is 20229 released in late February 2008, however with .NET 3.5 SP1
System.Web.Extensions.Design are already included which elivates the need to _install_ the
AjaxControlToolkit.msi on the server itself. The only thing is that we need to redirect all binding references to the newer 3.5 code by using
Web.Config also known as Assembly Binding Redirection.
Our web-server setup:
- ASP.NET 2.0 (3.5 still uses the .NET 2.0 ASP.NET engine)
- AjaxControlToolkit – v1.0.20229.20821
Compiled with Visual Studio 2005 SP1.
<configuration> elements in the
Web.Config file, add the following:
<?xml version="1.0" encoding="UTF-8"?> <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35" /> <bindingRedirect oldVersion="22.214.171.124-126.96.36.199" newVersion="188.8.131.52" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="System.Web.Extensions.Design" publicKeyToken="31BF3856AD364E35" /> <bindingRedirect oldVersion="184.108.40.206-220.127.116.11" newVersion="18.104.22.168" /> </dependentAssembly> </assemblyBinding> </runtime>
If your developer machines do not have .NET 3.5 SP1 installed then the above lines will need to be commented out as the CLR will fail to attempt to load newer versions.
Thats it! You dont need to update any assemblies or any other