Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 我怎样才能战胜同胞。VS2005/8解决方案文件的问题?_.net_Visual Studio 2008_Visual Studio 2005 - Fatal编程技术网

.net 我怎样才能战胜同胞。VS2005/8解决方案文件的问题?

.net 我怎样才能战胜同胞。VS2005/8解决方案文件的问题?,.net,visual-studio-2008,visual-studio-2005,.net,Visual Studio 2008,Visual Studio 2005,我在家里使用VS2008,我很喜欢它,在着手将2005年升级到2008年的工作时,我的一个明显的担忧原因是我们所拥有的所有2005年解决方案 虽然升级到2008年对我们来说可能很简单,但我们确实与其他使用2005年的开发人员合作,并且在不久的将来不会升级到2008年 我理解项目文件是交叉兼容的,没有问题,但解决方案文件是不 以下是我到目前为止遇到的一些链接: 我很好奇,微软有没有直面这个问题?他们有没有解决这个问题的修补程序?这似乎是一次非常糟糕的跨兼容性尝试,因为解决方案文件之间没有

我在家里使用VS2008,我很喜欢它,在着手将2005年升级到2008年的工作时,我的一个明显的担忧原因是我们所拥有的所有2005年解决方案

虽然升级到2008年对我们来说可能很简单,但我们确实与其他使用2005年的开发人员合作,并且在不久的将来不会升级到2008年

我理解项目文件是交叉兼容的,没有问题,但解决方案文件是

以下是我到目前为止遇到的一些链接:

我很好奇,微软有没有直面这个问题?他们有没有解决这个问题的修补程序?这似乎是一次非常糟糕的跨兼容性尝试,因为解决方案文件之间没有任何真正的更改(即2008年很容易忽略2005年的额外内容)


PS:这当然是假设我们不使用3.5中的任何新框架内容。

最简单的方法是只保留sln文件的两个副本-一个2005集和一个2008集。实际上,我经常认为SLN文件完全是短暂的和特定于开发人员的(很少在源代码控制中),但是不同的人发现不同的设置很有用。MSTest是这里的罪魁祸首(该死的testrunconfig文件…纯粹是疯了…)

请注意,使用2005和2008也会带来2008年开发人员意外使用C#3功能的风险。其中一些并不明显,例如改进的泛型类型推断-例如:

int[] data = {1,2,3,4,5};
string[] strings = Array.ConvertAll(data, delegate(int i)
    {return i.ToString();});
它需要C#2.0中的
,但不需要C#3.0中的。类似的风险也存在于任何生成代码的设计师/其他工具——VS2008/C#3.0版本可能包括“部分方法”,这在C#2.0中是不起作用的


如果可以的话,尝试在相当短的时间内升级每个人,以最大限度地减少由此带来的痛苦…

有趣的是,您没有将解决方案保留在源代码管理中。。TBH,我从来没有考虑过,因为我一直把它作为一种习惯+我一定会的@Rob-毕竟,不同的开发人员可能在不同的项目集上工作……事实上,这是非常有意义的,而且TBH,我经常遇到这样的情况,我检查了解决方案,并且因为有太多的项目参考而生气。使用您自己的解决方案并参考您想要的内容更方便:)谢谢:)