Visual Studio 2012 兼容性
本文档提供有关 Visual Studio 2010 Service Pack 1 (SP1) 中创建的解决方案、项目、文件和其他资产的 Visual Studio 2012兼容性的信息。
自动兼容的资产
Assets that require your attention
项目
Files
集成资产
要在 Visual Studio 2012 中使用该功能,可能需要升级在 Visual Studio 2010 中创建的某些类型的解决方案、项目、文件以及其他资产。在 Visual Studio 2010 SP1 中创建的许多资产将在 Visual Studio 2012 中加载和运行,无需再执行更多操作。即使在 Visual Studio 2012 打开资产后,许多资产也依然能在 Visual Studio 2010 SP1 中再次成功打开。有关仅限 Visual Studio 2010 SP1 资产可以无缝地迁移到 Visual Studio 2012 且在两个版本中可成功打开的原因,请参见 Microsoft 网站上的使用 Visual Studio 11 进行往返。
自动兼容的资产
Visual Studio 支持许多项类型、文件类型和其他资产。您可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开最广泛使用的资产,并且不论您使用的是哪一个版本,这些资产的表现形式都相同。例如,您可以使用 Visual Studio 2012 打开和修改在 Visual Studio 2010 SP1 中创建的项目。如果您随后重新打开 Visual Studio 2010 SP1 中的项目,则修改会保存,并且项目会像在 Visual Studio 2012 中一样执行。
下表列出了 Visual Studio 2010 SP1 项目类型、文件类型以及在 Visual Studio 2012中自动工作的其他资产。
net_v45 |
调试器转储文件 |
SharePoint 2010 |
Visual Studio 实验室管理工具版 |
AppManifest,Inbrowsersettings,OutOfBrowserSettings(.xml 文件) |
定向图形标记语言 (DGML) 关系图文件 |
SketchFlow |
Windows Azure Tools for Visual Studio version 1.7 |
BizTalk 平面文件架构 |
实体数据模型 (EDMX) 文件 |
sskatmai_r2 学习版 |
Windows Communication Foundation,Windows Presentation Foundation |
C#/Visual Basic Silverlight 4 或 Silverlight 5 应用程序或类库 |
来自 vs2010 的 IntelliTrace 日志文件 |
SQL Server 报告项目 |
Windows Communication Foundation,Windows Presentation Foundation |
C#/Visual Basic Webform 或 Windows 窗体 |
Model-View-Controller framework 3 or 4 |
单元测试 |
其他 |
代码分析规则集 |
MPI/群集调试 |
Visual C++ |
|
代码评审和“我的工作” |
Office 2010 VSTO |
Visual Studio 2010 web |
|
数据层应用程序包文件 |
探查器报告文件 |
Visual Studio 2010 数据库 (.dbproj) |
要求关注的资产
在 Visual Studio 2010 SP1 中创建的某些资产在 Visual Studio 2012 中打开前需要进行修改。如果您打开要求修改的资产,则会出现**“复查项目和解决方案更改”**对话框,并将资产分入这些组之一:
**要求功能性更改。**您必须先修改这些资产,然后才能在 Visual Studio 2012 中打开。资产更改后,您仍可在 Visual Studio 2010 SP1 中打开它们,但是项目行为将发生更改。这是属于此类别的项目和文件类型:
C#/Visual Basic Silverlight 4 或 Silverlight 5 应用程序或类库
编码 UI 测试
建模
C#/Visual Basic Silverlight 3 应用程序或类库
**单向升级。**您必须先升级这些资产,然后才能在 Visual Studio 2012 中打开。在将它们升级之后,您无法在 Visual Studio 2010 SP1 中打开它们。此表列出必须升级的几类资产:
BizTalk 2010
Rich Internet Applications
ssKatmai_exp 数据库
F#
解决方案 (.suo) 文件
Visual Studio SDK/VSIX
LightSwitch
SQL Server CE 3.5
**不支持。**您不能在 Visual Studio 2012 中打开这些资产。您必须在支持这些资产的 Visual Studio 版本中打开。下表列出了 Visual Studio 2012 不支持的资产类型。
Model-View-Controller framework 2
SharePoint 2007
Windows Mobile
MSI 设置 (.vdproj)
Visual Studio 宏
Windows Phone
Office 2007 VSTO
Windows Azure Tools for Visual Studio version 1.6 or earlier
说明 |
---|
如果尝试打开一个项目,但是该项目在 Visual Studio 2012 中不受支持且未安装关联的 Visual Studio 版本,则您可能会收到项目类型不支持的消息,而该项目类型将出现在“不受支持的项目”下的“复查项目和解决方案更改”对话框中。要在 Windows 8 中解决此问题,请打开“控制面板”,然后选择“程序”、“程序和功能”、“Visual Studio”、“更改”、“修复”。然后,可以安装所缺少版本。 |
说明 |
---|
如果尝试打开 Visual Studio Express 2012 for Windows 8 中的桌面应用程序项目,则会发生错误,并且会显示以下其中一条消息:“此版本 Visual Studio 仅支持 Visual Studio Windows 应用商店 应用程序”或“此项与当前版本的 Visual Studio 不兼容”。Visual Studio Express 2012 for Windows 8 限于 Windows 应用商店 应用程序的开发、测试和部署。要打开桌面应用程序项目,必须使用支持该项目类型的 Visual Studio 版本。有关 Visual Studio 版本的更多信息,请参见 Microsoft Visual Studio 产品。 |
如果您的团队同时使用 Visual Studio 2012 和 Visual Studio 2010 SP1,您可在任一版本中继续创建和修改项目和文件,只要不再添加要求 Visual Studio 2012 的功能即可。
警告 |
---|
如果项目需要针对 Visual Studio 2012 的功能,则无法打开早期版本的该项目。例如,如果您尝试使用 Visual Studio 的早期版本,则会发生错误 — 例如,Visual Studio 2010— 打开面向 .NET Framework 4.5 的项目。此外,可以启用语言功能(如 Visual Basic 迭代器和 Visual Studio 2012 中的 Visual Basic 核心,但是这些项目在早期版本中可能不能正确生成。 |
如果您正使用无 SP1 的 Visual Studio 2010,并且要打开已创建 Visual Studio 2012 的项目,则可能能够自定义项目系统,以合并 Visual Studio 2012 功能。有关如何执行此操作的信息,请参见如何:修改项目系统,以便项目在 Visual Studio 的多个版本加载。
项目
以下列表描述了对使用 Visual Studio 2010 SP1 所创建项目在 Visual Studio 2012 中的支持。您可以使用此列表来帮助确定是否能在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开项目,以及为便于兼容而必须进行的更改(如果有)。
项目的类型 |
兼容性 |
---|---|
.NET Framework 4.5 |
您可以在 Visual Studio 2012 中创建并打开该项目,但不能在 Visual Studio 2010 SP1 中执行该操作。有关更多信息,请参见 .NET Framework 4.5 的迁移指南。 |
BizTalk 2010 |
无法在 Visual Studio 2012 中打开此项目。 |
C#/Visual Basic Silverlight 4 或 Silverlight 5 应用程序或类库 |
如果允许 Visual Studio 自动更新项目,则可以在 Visual Studio 2012 或 Visual Studio 2010 SP1 中打开。 |
C#/Visual Basic Silverlight 3 应用程序或类库 |
如果允许 Visual Studio 将项目升级到 Silverlight 5,并且在运行 Visual Studio 2012 和 Visual Studio 2010 SP1 的计算机上安装相应的 Silverlight 运行时和工具,则可以在两个版本的 Visual Studio 中打开项目。 |
C#/Visual Basic Webform 或 Windows 窗体 |
您可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开该项目。 |
编码 UI 测试 |
如果允许 Visual Studio 自动更新项目,则可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开。有关更多信息,请参见从 Visual Studio 的早期版本升级测试。 |
F# |
当您在该版本首先打开它们时,您可以升级大多数 F# 项目到 Visual Studio 2012。但是,无法将 Visual Studio 早期版本中创建的 Silverlight 项目升级为 Visual Studio 2012。相反,您必须在 Visual Studio 2012 中创建一个 Silverlight 项目,然后将您的代码复制到其中。在 Visual Studio 2012 目标 Silverlight 5 中创建的 Silverlight 项目。 |
LightSwitch |
如果允许 Visual Studio 自动升级项目,则只能在 Visual Studio 2012 中打开。 |
本地数据库缓存 |
本地数据库缓存模板和“配置数据同步”对话框未包括在 Visual Studio 2012 中。如果安装的是 Microsoft Synchronization Services v1.0,您可以使用 Visual Studio 2012 来打开并运行在 Visual Studio 2010 中创建的项目,但是,如果您需要在 Visual Studio 2012 中进行更行,则必须手动对代码进行全部更改。或者,可以继续使用 Visual Studio 2010 维护和更新这些项目。对于新开发,请面向由 Microsoft Sync Framework 提供的新同步模型。有关信息,请参见 Microsoft Sync Framework 开发人员中心 |
模型视图控制器框架 |
如果模型 - 视图 - 控制器 (MVC) 项目使用版本 3 或 4,则可以在 Visual Studio 2012 中打开它。默认情况下,Visual Studio 2010 SP1 仅支持 MVC 2 和 3,而 Visual Studio 2012 仅支持 MVC 3 和 4。有关如何从 MVC 2 自动升级到 MCV 3 的信息,请参见 ASP.NET MVC 3 应用程序升级程序。有关如何从 MVC 2 到 MVC 手动升级 3 的信息,请参见升级 ASP.NET MVC 2 项目到 ASP.NET MVC 3 Tools 更新。如果您的项目面向 .NET Framework 3.5 SP1,则必须重定目标以使用 .NET Framework 4。 |
建模 |
如果允许 Visual Studio 自动更新项目,则可以在 Visual Studio 2012 或 Visual Studio 2010 SP1 中打开。 生成建模项目时,Team Foundation Build 将尝试验证项目中的层。在 Visual Studio 2012 中,Team Foundation Build 无法验证在 Visual Studio 2010 SP1 中创建的建模项目中的层。但是,在 Visual Studio 2010 SP1 中,Team Foundation Build 可以验证 Visual Studio 2012 中创建的建模项目中的层。 |
MPI/群集调试 |
如果相同版本的运行时或工具安装于正在运行 Visual Studio 2012 和 Visual Studio 2010 SP1 的计算机上,则可以在两者中打开此项目。 |
MSI 设置 (.vdproj) |
您不能在 Visual Studio 2012 中打开此项目,因为它不支持该项目类型。我们建议您使用 InstallShield Limited Edition for Visual Studio (ISLE),这是一个直接支持大多数 Windows 平台和应用程序运行时的免费部署解决方案。您还可以使用 ISLE 从 Visual Studio Installer 项目导入数据和设置。有关更多信息,请参见Windows Installer 部署。 |
Office 2007 VSTO |
如果您升级项目以面向 Office 2010 和 .NET framework 4,则可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开此项目。 |
Office 2010 VSTO |
如果项目面向 .NET framework 4,则可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开此项目。其他所有项目需要单向升级。 |
丰富的 Internet 应用程序 |
如果您升级项目,则只能在 Visual Studio 2012 中将其打开。有关更多信息,请参见如何:将丰富的 Internet 应用程序升级到 Visual Studio 2012。 |
SharePoint 2007 |
您不能在 Visual Studio 2012 中打开此项目。如果您将项目手动升级到 SharePoint 2010,则可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中将其打开。有关如何升级 SharePoint 2007 的详细信息,请参见 从 SharePoint 2007 迁移到 SharePoint 2010 (IT Pro),从 2007 工作流迁移到 Visual Studio & SharePoint 2010,以及 SharePoint Server 2010 的 SharePoint 企业搜索迁移工具。 |
SharePoint 2010 |
您可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开该项目。 |
SketchFlow |
您可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开该项目。 |
SQL Server CE 3.5 |
如果您将项目升级为 SQL Server CE 4.0,则可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中将其打开。 |
SQL Server 2008 Express 数据库 |
只能在 Visual Studio 2012 中打开此项目。如果您有使用 SQL Server 的早期版本创建的数据库文件 (.mdf),则必须将其升级为 SQL Server 2012,然后才能使用它和 SQL Server Express LocalDB。如果升级该文件,将获得 SQL Server Express LocalDB 的优势,但是数据库将不再与 SQL Server 的早期版本兼容。如果不升级文件,则可通过安装和使用您本地计算机上的 SQL Server 2008 Express,继续使用 Visual Studio 2012 数据库。有关更多信息,请参见如何:升级到 LocalDB 或继续使用 SQL Server Express。 |
SQL Server 2008 R2 学习版 |
如果 SQL Server 2008 R2 Express 安装于正在运行 Visual Studio 2012 和 Visual Studio 2010 SP1 的计算机上,则可以在这两者中打开项目。 |
SQL Server 报告项目 |
您可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开该项目。若仅限本地模式(即,在未连接到 SQL Server 时),您不会获得与 Visual Studio 2010 中的浏览器相关联的控件设计时体验,但是该项目在运行时将正常工作。
警告
如果添加针对 Visual Studio 2012 的功能,则报表架构将自动升级,您也不再能够在 Visual Studio 2010 SP1 中打开项目。
|
单元测试 |
您可以在 Visual Studio 2010 SP1 和 Visual Studio 2012 中使用 Microsoft 测试管理器 来打开在上述任一版本中创建的测试。有关更多信息,请参见从 Visual Studio 的早期版本升级测试。 |
Visual C++ |
可使用 Visual Studio 2012 来打开 Visual Studio 2010 SP1 中创建的 C++ 项目。如要使用 Visual Studio 2012 生成环境以生成在 Visual Studio 2010 SP1 中创建的项目,则必须在您的本地计算机上安装两个版本的 Visual Studio。有关更多信息,请参见如何:将 Visual C++ 项目升级到 Visual Studio 2012。 |
Visual Studio 2010 web |
如果允许 Visual Studio 自动升级项目,则可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开。 |
Visual Studio 2010 数据库 (.dbproj) |
如果将项目转换为 SQL Server 数据工具数据库项目,则可以在 Visual Studio 2012 中将其打开。但是,Visual Studio 2012 不支持这些项目:
如果您安装了 SQL Server 数据工具,则可以在转换后打开 Visual Studio 2010 SP1 中的项目。有关更多信息,请参见Microsoft SQL Server Data Tools。 |
Visual Studio 2010 Visual Database Tools |
您可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开此项目。 |
Visual Studio 实验室管理工具版 |
您可以在 Visual Studio 2012 或 Visual Studio 2010 SP1 中使用 Microsoft 测试管理器 来打开在上述任一版本中创建的环境。但在创建环境之前,您的 Microsoft 测试管理器的版本必须与您的 Team Foundation server 的版本匹配。有关更多信息,请参见从 Visual Studio 2010 升级实验室管理组件。 |
Visual Studio 宏 |
您不能在 Visual Studio 2012 中打开此项目,因为它不支持该项目类型。 |
Visual Studio SDK/VSIX |
在升级 Visual Studio SDK 项目后,您只能在 Visual Studio 2012 中将其打开。有关更多信息,请参见如何:迁移 Vspackage 到 Visual Studio 2010。 |
适用于 Visual Studio 的 Windows Azure 工具 |
如果您正使用针对 Visual Studio 1.7 版的 Windows Azure Tools,则可在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开此项目。有关如何使用 Windows Azure tools for Visual Studio 的最新信息,请参见 Windows Azure Tools 中的新增功能。如果您正使用 1.6 或之前的版本,则无法在 Visual Studio 2012 中打开此项目。 |
Windows Communication Foundation,Windows Presentation Foundation |
您可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开此项目。 |
Windows Mobile |
您不能在 Visual Studio 2012 中打开此项目,因为它不支持该项目类型。 |
Windows Phone |
您不能在 Visual Studio 2012 中打开此项目,因为它不支持该项目类型。 |
其他 |
您可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开大多数其他项目类型。 |
Files
以下列表标识了 Visual Studio 2012 是否支持每个类型的文件,是否可以在 Visual Studio 2012 和 Visual Studio 2010 SP1中打开文件,以及必须为兼容采取的变化(若有)。
文件类型 |
兼容性 |
---|---|
AppManifest,Inbrowsersettings,OutOfBrowserSettings(.xml 文件) |
您可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开这些文件。 |
BizTalk 平面文件架构 |
您不能在 Visual Studio 2012 中将这些架构添加到 BizTalk 项目。 |
客户端报表定义 (.rdlc) 文件 |
您可以在 Visual Studio 2012 中打开这些文件,并且,如果您添加了 Visual Studio 2012 功能和控件,则将自动升级架构。 |
代码分析规则集 |
您可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开这些文件。 |
数据层应用程序包文件 |
您可以在 Visual Studio 2012 中打开这些文件,前提是其版本为 2.0 或 2.5。 |
调试器转储文件 |
您可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开这些文件。您必须在 Visual Studio 2010 SP1 中安装 .NET Framework 4.5,以查看在 Visual Studio 2012 中为 Windows 应用商店 应用程序创建的托管转储。 |
定向图形标记语言 (DGML) 关系图文件 |
您可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开这些文件,而无需更改文件。Visual Studio 2010 SP1 可以显示在 Visual Studio 2012 中生成的关系图中的所有节点和链接,但不能显示未从数据库进行检索的节点和链接。 |
实体数据模型 (EDMX) 文件 |
在 Visual Studio 2012 中,可以打开面向 .NET Framework 3.5 或 .NET Framework 4 的 EDMX 文件,不用对文件做任何更改。如果您在 Visual Studio 2012 中创建 EDMX 文件,并且这些文件面向 .NET Framework 4.5 或者由数据库项目或 DACPAC 生成,您将不能在 Visual Studio 2010 SP1 中打开这些文件。要在 Visual Studio 2010 SP1 中打开此类文件,必须手动重新选定目标或转换该文件,如下所示:
输出为面向数据库的 EDMX 文件,而不是数据库项目(.dacpac 文件)。 |
探查器报告文件 |
您可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开探查器报告文件(.vsp、.vsps、.psess 和 .vspf)。您不能在 Visual Studio 2010 SP1 中打开 .vspx 文件。 |
解决方案 (.suo) 文件 |
您可以使用 Visual Studio 2012 来打开在 Visual Studio 2010 SP1 中创建的解决方案文件,但断点、列管项目、数据提示和异常设置都将迁移至新的 .suo 文件。如果您重新打开 Visual Studio 2010 SP1 中的解决方案,则使用原始 .suo 文件。在 .suo 文件中的更改未在两个版本之间同步。 |
SQLX 文件 |
要在 Visual Studio 2012 中打开这些文件,必须执行单向升级、在 Visual Studio 的目标版本中部署 .sqlx 文件,然后重新生成 .dacpac 格式的文件。 |
来自 Visual Studio 2010 的 IntelliTrace 日志文件 |
您可以在 Visual Studio 2012 和 Visual Studio 2010 SP1 中打开这些文件,但是您无法在 Visual Studio 2010 SP1 中使用 Visual Studio 2012 中的 IntelliTrace 文件,因为新版本的功能不同。 |
集成资产
如果您所使用客户端和服务器的 Visual Studio Team Foundation Server 版本不同,则可能遇到兼容性问题。
集成类型 |
兼容性 |
---|---|
代码评审和“我的工作” |
如果将 Team Foundation 客户端连接到 Visual Studio Team Foundation Server 2010,您将不能使用“代码评审”和“我的工作”功能。 |
Visual Studio Express 2012 for Windows 8 |
您不能使用 64 位环境(如 MSBuild 或 Team Foundation Build)来生成您在 Visual Studio Express 2012 for Windows 8 中创建的 Windows 应用商店 的应用程序。 |