4

我有一个主要使用 MonoDevelop 开发的开源项目。我在 Visual Studio 2010 中对其进行了测试,那里一切正常。然后,我在 Visual Studio 2012 中对其进行了测试,它对我的​​项目和解决方案进行了“静默”迁移。

与 Visual Studio 2010 不同,它没有显示任何关于需要迁移的警告。相反,它只是进行了迁移并吐出了一份迁移报告。它还将我的项目重置为使用 .Net 2.0,之前它被设置为使用 4.0 ..(易于更改,但仍然如此)。在此迁移之后,它可以在 Visual Studio 2010 中正常工作,并且不会尝试迁移。

但是,我的问题是什么决定了它甚至需要进行迁移?在我的工作中,我们有一个 Visual Studio 2010 项目,它可以在 Visual Studio 2012 中完美运行,无需任何迁移(该项目文件之后甚至没有标记为已修改)。这里有什么区别?

4

1 回答 1

3

至少 VS2012 将使用如下行更新您的解决方案文件:

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012

至于您的解决方案/项目的其余部分,“迁移”的内容取决于许多因素 - 如果您有 VS2010 的 SP1,那么您将在两个版本的 VS 之间拥有更好的互操作性。最大的亮点是数据库项目(.dbproj 文件变为 .sqlproj),常规类库应该在任一版本中都可以正常打开。

这是一篇相当全面的 MSDN 博客文章讨论它:Visual Studio 2012 新功能:兼容性(又名项目往返)

于 2012-10-08T02:12:47.970 回答