繁体   English   中英

语法突出显示在 Visual Studio 中不起作用

[英]Syntax highlighting not working in Visual Studio

Visual Studio 专业版 2022、ReSharper 2022。

在 Visual Studio 中编写一些“正常”C# 代码时,我遇到了一个问题,即所有语法突出显示都丢失了,并出现了一些异常的编译器错误。 语法突出显示在所有其他文件中继续按预期工作。

编译器错误在不同位置显示不同:

  • 将鼠标悬停在文件上时:“表达式太长或太复杂,无法编译”
  • 在文件中:“参数为‘ref’,而参数声明为‘value’”

表达式太长或太复杂而无法编译

参数是 ref 而参数被声明为值

如第二张图片所示,导致错误的代码如下:

public class Location : ILocation
{
    public int InventoryId { get; }
    public IReferences References { get; }

    public Location(IInventoryLocation location)
    {
        var shortRef = location.References
            .Single(ref => ref.ReferenceType == ReferenceType.Short);

        // ...
    }
}

我注意到了这个问题,但张贴在这里以防它帮助其他人。 我使用ref作为 lambda 变量的名称,这当然是 C# 中的关键字。 将其更改为reference或任何其他内容可恢复语法突出显示。 当然,文件中的编译器错误非常清楚,但这并不是最初呈现给我的错误。 我尝试了其他几个关键字,但似乎只有ref会破坏语法突出显示。 StackOverflow 的语法高亮实际上更能揭示问题!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM