gpt4 book ai didi

asp.net - Azure站点: Compiler Error Message: CS1056: Unexpected character '$'

转载 作者:行者123 更新时间:2023-12-03 03:00:04 33 4
gpt4 key购买 nike

我尝试在 Azure 中托管我的应用程序,但出现以下错误:

编译器错误消息:CS1056:意外字符“$”版本信息:Microsoft .NET Framework版本:4.0.30319; ASP.NET 版本:4.7.2623.0

我使用“$”符号进行字符串连接。这在我的本地计算机上运行良好,但会引发编译错误。

如何在 Azure 中设置正确的框架版本并避免上述异常。

谢谢,萨拉特

最佳答案

Lex 应该因为以正确的方向发送此信息而受到赞扬。我想确认这是正确的路径并解决问题并提供更多细节。当我尝试将 ASP.NET 应用程序部署到 Microsoft Azure 应用服务时,我遇到了同样的问题和错误消息“编译器错误消息:CS1056:意外的字符 '$'”,实际上解决方案是将 Roslyn 编译器添加到项目中。默认情况下,Microsoft Azure App Service 上使用的内置编译器仅支持最多 C# 5 语言功能,需要 Roslyn 来编译和使用 C# 6 功能。注意我正在为我的项目部署 CS 文件,而不是编译的 DLL 文件。

在项目中安装 Roslyn

  1. 在 Visual Studio 2017 中,选择“工具”->“NuGet 包管理器”->“管理解决方案的 NuGet 包...”
  2. 从选项卡中选择“浏览”,然后搜索“Microsoft.CodeDom.Providers.DotNetCompilerPlatform”
  3. 从搜索结果中选择“Microsoft.CodeDom.Providers.DotNetCompilerPlatform”,然后在右侧检查要添加到的项目名称,然后点击“安装”按钮。
  4. 重建您的解决方案并确保它仍然可以构建。

使用 Roslyn 进行部署

  1. 您会注意到安装 DotNetCompilerPlatform 包会在您的 Web.config 文件中添加一个如下所示的部分,请确保将此部分添加到您部署的 Web.config 中:

      <system.codedom>
    <compilers>
    <compiler language="c#;cs;csharp" extension=".cs"
    type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
    warningLevel="4" compilerOptions="/langversion:default /nowarn:1659;1699;1701"/>
    <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb"
    type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
    warningLevel="4" compilerOptions="/langversion:default /nowarn:41008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+"/>
    </compilers></system.codedom>
  2. 您还会注意到,安装 DotNetCompilerPlatform 软件包并构建解决方案时,会在 Bin 文件夹中添加一些文件,确保这些文件(包括整个“roslyn”文件夹及其中的所有文件)放入您的 Bin 文件夹中部署:Bin folder files to deploy

这就是让我的网站恢复并使用 C# 6 语言功能运行所需的全部内容,希望它有所帮助。

关于asp.net - Azure站点: Compiler Error Message: CS1056: Unexpected character '$' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49841909/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com