我正在使用最初使用VS 2003创建的dotnet C#Web应用程序。我的目标是将此应用程序升级到Dotnet 4.0而不更改任何功能。该解决方案有9个项目(1个Web + 8个图书馆项目)。 Web项目引用DLL中的8个库。首先,我在VS2010中创建了一个New项目,并从现有源代码中添加了所有Project文件。每次我将项目文件添加到我的解决方案时,我都会收到Converison向导的提示,并且我成功完成了转换向导,现在解决方案正常。转换后,我注意到除了“Web”项目,其他项目转换为Dotnet 2.0但不是4.0。如果我使用VS2010在本地运行它,我的应用程序运行没有错误。我的问题是
请帮忙......
答案 0 :(得分:4)
如果你现在正在迁移,为什么不直接转到Visual Studio 2012而不是2010?
无论如何,您可以做的是在每个项目中打开项目属性,并将目标框架更改为.NET framework 4.0。
然后,如果您收到任何编译错误,您可以轻松地单独解决它。如果您的项目不是太大,这应该相对容易。
至于你的具体问题:
自动转换只会更改解决方案/项目的格式以与新版本Visual Studio兼容。它不应该改变目标框架,但你可以自己改变它。
是的,可以从面向.NET 4.0的程序集中加载和使用面向.NET 2.0的程序集。
答案 1 :(得分:1)
1)升级解决方案/项目文件只会升级它的格式,以便您可以在VS 2010中打开它。它通常会将目标.NET设置保留为之前的值。这是两个单独的事情。关于VS 2010的精彩之处在于它让你可以定位你想要的任何.NET版本,所以你不再需要安装多个版本的VS来支持不同的.NET版本。它没有改变目标.NET版本,因为它留给你。您可以在项目设置下更改它并重新编译库项目以重新生成DLL
2)您将需要.NET 4的应用程序池..NET向后兼容,因为.NET 2.0应用程序可以在安装了.net 4的计算机上运行。但是,2.0应用程序的应用程序池必须与4.0应用程序分开。所以这只是将应用程序放在合适的应用程序池中。