Attention: We are retiring the ASP.NET Community Blogs. Learn more >

VS.NET and versioning conflicts

Well, it finally happened.  DLL Hell all over.  The below comes from a very reliable source.  When using a patch or new version of an assembly within the IDE, you will need to know this.

 

"In .NET there is no longer automatic upgrading of a dll to use the latest version when a patch is applied (which is what you would normally could expect in COM (activex)) because you may want to maintain a project using version x while working in another project with version y of the same component.

The "end of dll hell" means that you as a developer are the only responsible for the version of the assemblies you use in every project. So after installing a patch you could not want a certain project to be upgraded and the version shouldn’t change automatically. 

Now. In order to do the upgrade your project to use a new version of an assembly, you need to close all the designers that are open in your project (Clicking <Window|Close All Documents> menu should do it) and save your project. Once the project is saved, you can now remove the previous references and add the new ones. If you don't change the references in this way, the version the designer has loaded and the new version you are referencing could conflict and could cause a problem.  

Is important to notice that when you have added the controls to the ToolBox those links in the ToolBox points to the version of the control that were used when they were created, so if you then upgrade your project to use a newer version the ToolBox link are not automatically upgraded to point to the new version and you need to reset the ToolBox and then recreate the links for the new versions.

Also when adding a reference you must do it from the Projects tab window (instead of adding from the Add References menu) and then in the Add Reference dialog box you need to add the reference to the library project. This way you could avoid a problem in which sometimes the references do not change and reverts to a previous version (which I believe is the problem you are experiencing) "

No Comments