为什么Visual Studio解决方案需要在每个Visual Studio版本中升级?

use*_*921 5 visual-studio

这很容易成为Visual Studio历史上最烦人的"功能"之一,我不明白为什么它存在 - 永远.

为什么CodePlex项目需要关注我正在使用的Visual Studio版本?

在我的脑海中,我唯一能想到的是Visual Studio的某些版本可能会内省搜索属性的程序集,以确定在"Visual Designers"和"Property Editors"中显示的内容.但是为什么会导致Visual Studio无法打开项目并允许我浏览其内容并进行编译?

在我看来,.NET中的Open Source在某种程度上受到Visual Studio所展示的愚蠢依赖管理的限制.换句话说,如果我使用的是Visual Studio 2008并且您使用的是Visual Studio 2010,那么我们会有不同的解决方案文件.

m-y*_*m-y 1

http://blogs.msdn.com/b/visualstudio/archive/2010/03/15/why-does-visual-studio-2010-convert-my-projects.aspx

以下是该网站的一个示例,说明了Visual Studio 将项目转换为 2010 格式的原因。

例如,Visual Studio 为设计人员运行诸如单文件生成器之类的自定义工具,以便输出表示对设计人员所做的更改的代码。其中许多自定义工具已在较新的 IDE 中升级或完全替换。在转换过程中,IDE 知道要替换或升级哪些自定义工具。为了实现往返工作,VS需要新旧定制工具相互理解,以确保新老设计师能够并肩工作。除了设计器之外,以下文件也会受到影响:资源编辑器、向导、代码片段、项和项目模板、图表和建模工具等等。工具等等。

由于 2010 了解 2008 有哪些工具,因此它可以向前转换以与 2010 使用的自定义工具兼容。2008根本不知道2010在用什么,怎么可能呢?因此,不可能向后转换,因为它不知道需要转换什么,也不知道如何转换。