假定一个解决方案只包含的课程,这些课程都是书面的。网2.0的规格。如果这一解决办法是可以打开,转换和保存在Visual Studio2008年,才有可能重新打开解决方案后,在Visual Studio2005年与一些最小的修改。SLN的文件?

会如何去做呢?

是有一个工具,将"向下转换"。SLN文件从2008年到2005年,如果所有类别内所包含的解决方案已经写入。网2.0的规格吗?

有帮助吗?

解决方案

通常,您需要对.SLN文件执行的唯一操作是更改文件顶部的版本号。

您的CS项目文件也几乎没问题,如果不是,可以对它们进行调整,以便它们在2005年和2008年都可以。

我们运行了一段时间,两个解决方案文件(05和08)共享同一组CS项目文件。

请注意,您不能在这两个版本之间共享VC项目文件。

项目文件的'tweak'如下:

在VS2008上创建的CS项目将包含以下行:

<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

VS2005会对此产生阻碍,您需要将其更改为以下内容:

<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />

后者将适用于2005年和2008年。

其他提示

如果你没有使用任何“幻想”的话。在2008年的功能,根据我的经验,唯一改变的是几个地方的版本号。这可以手动编辑(它位于文件IIRC的顶部)。这至少值得一试。如果你使用VS2008特有的功能(设计师等)它可能无法工作,但对于简单的类库,我已经成功地做到了这一点。

您可能对关于VS2005和VS2008共存的博客文章,我刚才写过。

是的,如果你“降级”,这是可能的。解决方案文件。

不,我知道没有这样的工具,我看了。

您有三种选择:

  1. 2008年未打开解决方案文件,因此永远不会升级
  2. 不要将客户端版本与相同的文件混合(即坚持2005年,或每个人都升级)
  3. 为2005和2008保留单独的解决方案文件,确保所有相同的项目都存在于
  4. 感谢 @Will Dean 提醒我确实可以共享项目文件。请注意,它们被2008年编辑所感动,但之后可以在2005年开放。

你可以试试这个。 YMMV

http://www.emmet-gray.com/Articles/ProjectConverter.htm

我记得几个月前它被发布在Jon Skeets博客上,似乎得到了人们的赞许

有没有直接的方式,这是一个高了如果你尝试。最简单的办法是创建一个新的2005年项目和添加类。

对于初学者来说:这些都是不同,你会看到:

.csproj文件:(这些都是基于MSBuild模式)

(编辑)

  • ToolsVersion
  • 产品为
  • ProjectVersion

(删除)

  • OldToolsVersion
  • TargetFramework

.sln文件:(no schema)

  • 格式版本10.0

等等。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top