在同一位置使用VS2017和VS2015 C#项目,并排

时间:2017-10-29 20:16:21

标签: c# visual-studio visual-studio-2015 visual-studio-2017

是否有人在同一文件夹中将Visual Studio 2015和2017 .CSPROJ文件并排使用?除了我应该担心的解决方案和项目文件之外,还有其他任何不兼容的问题吗?

基本上我想要做的是允许我们的开发人员继续使用VS2015和那些项目 - 只是一段时间 - 而所有人仍在使用完全相同的相同代码文件集。我不想移动/改变其他任何东西。

我已经创建了所有新的项目文件和解决方案文件。但是我想知道我是否可以将它们放在相同的物理磁盘文件夹中并让每个人都快乐地使用VS2015或VS2017来开发它们的开发任务。

同步项目文件本身的重复工作不是问题。我只是想确保没有任何其他格式差异可能会导致某种构建/运行问题。

还有其他人在外面这样做吗?这可行吗?

3 个答案:

答案 0 :(得分:1)

没有任何不兼容性,但你应该检查在VS2017中创建一个新项目的那种项目,你应该记住两件事,首先,当你创建.net项目时,你必须继续使用旧的.net框架而不是.net核心,第二个(仅当你要创建桌面/库/控制台项目时),你需要使用Common选项而不是新选项(检查下拉列表以选择.net允许您选择低于4.5的版本的框架版本,如果没有,则导致您选择了不正确的项目类型,这种项目在VS2015中不起作用,因为它们会更改.csproj文件的结构。希望这个小解释可以帮助你。

更新

我想说的是,这个解释是每个来自VS2015或2017的项目,如果它们具有相同的结构(相同的旧式.net框架),那么你可以做你想做的事情,但是如果是某些原因你需要制作.net核心,那么这将无法工作。

干杯。

答案 1 :(得分:1)

请注意,VS2017支持2015年没有的C#语言版本功能。如果有人使用这些功能,您将无法在VS 2015中构建项目。

您可以在.csproj文件中强制执行语言版本,但这是根据BuildConfiguration完成的,并且对于包含许多项目的大型解决方案来说可能很繁琐。

进行更改

  • 右键单击项目,然后选择属性
  • 然后构建然后
  • 高级(右下角)一般>语言版本
  • 更改为C#6.0

总体而言,如果你有任何SSIS或SSRS包,你可能需要保留VS2015,因为工具仍然无法用于一般发布(10月17日)并且仍在预览中。

答案 2 :(得分:0)

您应该可以并排运行Visual Studio 2015和Visual Studio 2017而不会出现任何问题。在每个开发人员迁移到VS 2017之前,我们的应用程序在Visual Studio 2015和Visual Studio 2017上运行。

你确实需要记住一些事情:

  1. Visual Studio 2017支持C#7.0。确保在两个IDE中使用相同的语言版本。
  2. VS 2017还支持editor.config之类的东西。我建议避免使用它(虽然我觉得它不应该是一个问题)

  3. 如果您在没有<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="container"> <div class="cards"> <div class="card unmatched"></div> <div class="card unmatched"></div> <div class="card unmatched"></div> <div class="card unmatched"></div> <div class="card unmatched"></div> <div class="card unmatched"></div> <div class="card unmatched"></div> <div class="card unmatched"></div> <div class="card unmatched"></div> <div class="card unmatched"></div> <div class="card unmatched"></div> <div class="card unmatched"></div> </div> </div>的.NET Core项目上使用。不要以为你能升级它。