【发布时间】:2010-11-04 19:47:35
【问题描述】:
假设我想编辑一个用 vs2005 编写的开源项目,并且我有 vs2010。 2005 年以后的 VS 用户有什么办法可以读、写和调试同一个项目?
我正在考虑的开源项目是 Lucene.NET
【问题讨论】:
标签: visual-studio visual-studio-2008 visual-studio-2010 visual-studio-2005
假设我想编辑一个用 vs2005 编写的开源项目,并且我有 vs2010。 2005 年以后的 VS 用户有什么办法可以读、写和调试同一个项目?
我正在考虑的开源项目是 Lucene.NET
【问题讨论】:
标签: visual-studio visual-studio-2008 visual-studio-2010 visual-studio-2005
我没有尝试在所有三个项目上都使用项目,但我确实设法让 2005/2008 和 2008/2010 之前一起工作。
关键是获取解决方案文件 (.sln) 的副本,而不是项目文件。让 Visual Studio 更新项目文件。
现在,当您使用旧版本的 Visual Studio 打开旧解决方案文件时,根据我的经验,它仍会设法加载较新的项目文件。它会发出警告,但会正常工作 - 再次,根据我的经验。
因此,您最终会保留两个(或三个)解决方案文件,当您添加新项目时,每个文件都需要更新,但每个项目只需要一个项目文件。我倾向于根据VS的版本来命名解决方案文件,例如:
NodaTime VS2008.sln
NodaTime VS2010.sln
请注意,如果您使用较新版本的 Visual Studio 的一些高级功能(例如,旧版本中不可用的设计器)那么它很可能会损坏。但是根据我相对简单的项目的经验(就只有代码而言,很少有花哨的设计师)它运作良好。显然,这些项目必须针对旧版本的 Visual Studio 也支持的 .NET 版本。
【讨论】:
这行不通,因为如果您在 2008 年或 2010 年打开 VS2005 项目,它首先会将该项目转换为 2008 或 2010 年。您需要为每个项目制作一个单独的副本您要使用的 VS 版本。
【讨论】:
由于转换过程,它不会起作用。但是,VS2005、VS2008 和 VS2010 之间的 .sln 和 .csproj 文件的变化非常小。您可以保留一份单独的副本,也可以手动进行更改。
更多关于转换过程的信息here。
根据解决方案和项目的复杂程度,这可能是值得的。
【讨论】:
也许试试 Visual Studio Express 2005,我相信它可以与其他完整版本的 Visual Studio 共存,但我不知道 Lucene.NET 所以不确定它是否会与该版本一起打开\编译。
【讨论】: