【问题标题】:Running Builds with C# 6使用 C# 6 运行构建
【发布时间】:2017-01-23 13:18:35
【问题描述】:

我们最近从 2010 年升级到 TFS 2015。由于这次升级,我们希望在我们的项目中开始使用 C# 6 语法,但无论何时我们这样做,构建都会由于语法错误而失败。构建代理/控制器也来自 TFS 2015 安装程序(这是一套全新的服务器)

我们的构建使用TfvcTemplate.12.xaml Process 模板,这显然是 TFS2013 xaml 构建模板。

根据this的回答,您可以修改模板以适当地设置ToolsVersion,但是我们的模板没有Run MSBuild for Project项,它有一个Run MSBuild活动,它没有指定的属性。

我还尝试在来自 this 答案的构建定义中设置 MSBuild 上的 tv:14.0/p:VisualStudioVersion=14.0 参数,但这也不能解决问题。

我们需要做什么才能让构建接受C# 6 语法?

【问题讨论】:

  • 在我的开发机器上,我不得不重置 Visual Studio 的设置。我不知道为什么。可能是插件、插件或缓存。
  • 项目的构建设置包括目标语言。您必须将旧项目的语言版本更改为 C# 6。
  • 去构建代理机器,并使用MSBuild命令构建你的项目,看看你会得到什么结果。
  • 你用VS2015创建C# 6.0项目吗?
  • @Cece-MSFT 该死,这是一个 PEBKAC,实际错误来自 Stylecop.MSBuild,更新包解决了这个问题。不确定是否值得将 Q 更新为更具体,并回答它,还是直接删除问题?

标签: tfsbuild tfs-2015 c#-6.0


【解决方案1】:
  1. 如果您使用的是 VS 2015,那么 C# 6 应该是开箱即用的。尝试创建一个轻量级 c# 6.0 项目并排队 XAML 构建以检查问题是来自您的项目还是来自构建服务器。

  2. 在使用 XAML 构建之前,请确保您可以在构建代理服务器上手动使用 MSBuild 命令行成功构建。

  3. 如果您迁移到 C# 6.0,请查看博客 Migrating project to .NET 4.6 and C# 6 看看是否有帮助。

【讨论】:

    猜你喜欢
    • 2016-08-12
    • 1970-01-01
    • 2015-10-14
    • 2019-01-08
    • 1970-01-01
    • 1970-01-01
    • 2017-04-16
    • 2013-02-03
    • 1970-01-01
    相关资源
    最近更新 更多