我在 Visual Studio 2012 中使用 C# 编写应用程序,但我想在 Visual Studio 2008 的另一个地方打开该项目。我该怎么做?在储蓄我必须做点什么?还是在visualstudio 2008 中?
4 回答
由于我在家用计算机上使用 VS 2008,因此我经常必须这样做。
您可以手动修改解决方案文件 (*.sln)。大多数情况下,您只需更改定义解决方案的 VS 版本的前两行。
从这个链接:
您可以手动编辑 sln 和 csproj/vbproj 文件并尝试这种方式,我使用这种方法没有副作用。在 sln 文件中,VS2010 的第一行会说
Microsoft Visual Studio Solution File, Format Version 11.00 # Visual Studio 2010
对于 VS2008 解决方案:
Microsoft Visual Studio Solution File, Format Version 10.00 # Visual Studio 2008
此外,在 2010 年的项目文件中,您可能会找到类似的部分
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
这将需要修改为
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets" />
仅通过这两种类型的更改,我就能够使用 VS 2008 打开解决方案和项目。
这是不可能的。
Visual Studio 通常不支持前向兼容性,即在旧版本的 Visual Studio 中打开新项目。它通常支持向后兼容性——在较新的 Visual Studio 中打开较旧的解决方案。
您唯一真正的选择是将其保留为 2008 年的解决方案;即使那样,当您在 2012 年打开它时,它可能会要求您将其转换为 2012 年的解决方案格式,这将使其在 2008 年无法使用。
我基本上有同样的需求,因为我想保持与 .net 3.5 的兼容性。尽管 VS2010 和 VS2012 支持在此 FW 版本上运行的项目,但仍有许多用户被公司强制使用 VS2008 或 2010。
我也可以在 2008 年发展,但作为一个极客,我什至不考虑它!:)
因此,我的解决方案是为每个 VS 版本创建单独的 *.sln 和 *.csproj 文件。这样,您就可以保证每个 VS 版本的一切都可以开箱即用。
我发现这样做的更简单快捷的方法是打开 eash VS 版本并创建空的解决方案和项目,其结构与原始版本相同,但名称上的 vs 版本如下:
- 我的解决方案.sln
- 我的.project.csproj
- ...
- 我的.solution.vs2008.sln
- my.project.vs2008.csproj
- ...
- 我的.solution.vs2010.sln
- my.project.vs2010.csproj
- ...
请记住,您必须手动打开所有版本并添加新文件等等......它们不会自动同步,但它几乎可以工作。
希望这会有所帮助,干杯!