将Visual Studio 2008升级到2013以及.NET 3.5升级到4.5.1

7

我计划对我们的解决方案进行3点升级,其中包括从VS2008 SP1升级到VS2013和.NET 3.5升级到4.5.1(还有MS SQL Server 2008升级到2012)。我正在尽可能提前准备,以便能够提供准确的工作量评估,并使过程尽可能顺利。然而,我没有找到有关如何从VS2008升级到VS2013的信息。对于已经完成此操作的任何人,您是否发现了有用的指南或遇到的问题,您希望事先处理好?


1
计算需要多少时间的一种可能方法:按照文森特的回答所述,改变目标框架并单击“重新生成解决方案”。您得到的编译错误数量可能会告诉您有关完成任务的难度。 - Federico Berasategui
1
我认为最终这取决于具体的产品和开发人员。我从2010年开始使用,觉得2012年很容易上手,但有些人完全拒绝使用它。我要注意的是,你应该一次性全部转换,因为解决方案转换不支持向后兼容,尽管2010年及以上版本支持向前兼容。 - Magus
3个回答

13

如果不了解您的项目(实际上什么都不知道),很难给您一个直接的答案。但是,我可以说一下。自从成立以来,微软一直以向后兼容性而自豪。在VS 2013中打开项目将触发实际SLN的升级过程,这通常是相当轻松的。完成后,您仍然可以定位到.NET 3.5,因此您无需同时从VS2008-> VS2013和NET35-> NET451跳转。

框架本身不应该给您带来任何严重的问题,但是任何引用的第三方dll都可能会导致(有时是严重的)问题。它们可能不再维护,可能更改名称,或者只是不存在。在这种情况下,您需要找到一个新库来执行旧库所做的操作,这将需要最好进行重构,最坏的情况是需要重写。

所有这些都没有考虑从NET35添加到NET45的功能,例如async/await关键字以及许多其他功能。

由于您的问题非常模糊,除了建议您进行更新之外,很难给您一个好的答案。更新到VS2013应该只需很少的时间,并且它将告诉您是否会有任何构建问题。完成后,更改目标框架为NET45或NET451并再次查看是否可以编译,应该不需要花费多少时间。如果不进行这两项操作,则无法估算所需的工作量。然后,您仍然需要进行所有测试以查看运行时是否发生变化。


2
非常感谢您提供的信息,同时您的图片也很棒。这个人不会忘记他的毛巾。 - Honanin

5
问题不在于从Visual Studio 2008升级到2013,因为您仍然可以在Visual Studio 2013中运行和编译.NET 3.5应用程序。真正耗时的过程是从.NET 3.5迁移到4.5.1,这取决于您的应用程序有多大以及使用了什么技术,可能会很短或很长。
通常,.NET 3.5具有很好的向前兼容性。
从一个运行时更改到另一个运行时(从3.5到4.5)只需要在项目中更改一个设置(目标框架)。

1

请注意,.NET 4.5 不支持 Windows XP。如果您的解决方案需要在 XP 上运行,则需要保留 .NET 4.0 或更低版本。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接