【问题标题】:CAnnot build and deploy old project from VS2017无法从 VS2017 构建和部署旧项目
【发布时间】:2017-11-02 13:26:30
【问题描述】:

我正在 VS2017 中处理一个旧项目。 我的更改在开发环境中运行良好。 但是当我尝试构建到服务器时,我得到了这个错误;

 Models\HoldingCompany.cs (21): Unexpected character '$'

受影响的线路是;

public override string ToString()
{
    return $"{this.Name} - {this.VatRegistrationNumber}";
}

现在确实该项目最初不是用 C# 6 编写的。 那么我需要做什么来解决这个问题?我已经在要部署的服务器上安装了 .Net framework 4.6。 我用谷歌搜索试图找到我需要做的其他事情,但我没有想出任何东西。 我正在使用原始的 XAML 构建定义。 这是我的日志文件:https://1drv.ms/t/s!ArKf9AZKW_zWgQVzxitLQzMWjfSh

【问题讨论】:

  • 然后呢?那条线是什么?为什么你认为 Visual Studio 有任何问题?您提到了构建服务器。 构建服务器 使用什么?我怀疑它没有使用 Visual Studio。是否使用了正确的 msbuild 工具和编译器?您是否正在使用插值字符串?如果服务器上的构建工具是旧的,或者语言版本不是至少 6,你会得到这样的错误
  • 更新了问题。这是一个新的 C#6 功能。该代码最初不是 C#6,所以我需要做些什么来解决这个问题?它在开发中编译并运行正常。
  • 在构建服务器上安装更新的工具。和/或修复设置以指向较新的 SDK 文件夹。您还没有解释您使用哪个构建服务器或如何构建您的项目,因此无法提供更具体的帮助
  • 我正在使用 TFS 从 Team Explorer 构建。构建服务器操作系统是 windows server 2008 R2。
  • 我已在问题中添加了指向我的日志文件的链接。

标签: c# visual-studio-2017


【解决方案1】:

您需要构建服务器才能使用正确的构建工具。在您的情况下,您需要 C# 6 编译器才能启动,因此我建议执行以下步骤: 1.安装VS2015构建工具(或以上) 2. 打开您的构建定义(xaml 模板)并修改 ToolPath 属性以指向服务器计算机中的正确文件夹:

“C:\Program Files (x86)\MSBuild\14.0\Bin”(如果是 VS2015) “C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin” (如果是 VS2017)

【讨论】:

    猜你喜欢
    • 2014-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-27
    • 2018-07-09
    • 2014-09-24
    • 2012-11-09
    • 2021-05-13
    相关资源
    最近更新 更多