Visual Studio 将 JavaScript 解释为导致错误的 C#

Visual Studio interprets JavaScript as C# which causes errors

在我的 ASP.NET 核心项目中的代码中,这是导致问题的原因:

作为文本:

<script>
/**
     * Get a setting value.
     * @param {string} name
     * @param defaultValue
     * @returns {*}
     */
    getSetting(name, defaultValue) {
        return name in this.settings ? this.settings[name] : defaultValue;
    }
</script>

我在每个文档代码中得到的错误是 https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/compiler-messages/cs0103 它被清楚地标识为 C# 代码,即使我在 .cshtml 文件中编写此代码 <script> 标记...

我该如何解决这个问题?它阻止我编译和执行...

如果重要的话,我正在使用 Visual Studio 2022 预览版 4.1

.cshtml 文件被解释为 Razor 模板,其中 @ 用于标记模板中的 C# 代码。

您可以使用第二个 @ 转义,即 @@param 等,或者将 JS 移动到单独的文件。