Man*_*and 3 c# visual-studio c#-11.0
我有一个 .NET 7.0 WinForms 项目,该项目在其属性中声称将语言版本设置为 11.0(并且我在 .csproj 中进行了操作以使其成为“最新”和“预览”等)。
ReSharper 的检查表明我可以field在很多地方使用该关键字,但是当我这样做时,VS 讨厌重构的结果,并且我会收到编译错误(“名称‘字段’在当前上下文中不存在”等) 。
我完全不明白为什么我的 VS(我什至尝试过预览版——我使用的是 Professional 2022 版本 17.5.0 预览版 6.0)不想喜欢 C# 11。
这是我安装的 SDK 的内容,以防万一出现问题......
C:\>dotnet --list-sdks
7.0.103 [C:\Program Files\dotnet\sdk]
7.0.200-preview.22628.1 [C:\Program Files\dotnet\sdk]
7.0.200 [C:\Program Files\dotnet\sdk]
Run Code Online (Sandbox Code Playgroud)
这是产生错误的代码区域之一。
前
C:\>dotnet --list-sdks
7.0.103 [C:\Program Files\dotnet\sdk]
7.0.200-preview.22628.1 [C:\Program Files\dotnet\sdk]
7.0.200 [C:\Program Files\dotnet\sdk]
Run Code Online (Sandbox Code Playgroud)
后
private int _updateDepth; // this is "grayed" by R# with hint to address
private int UpdateDepth
{
get => _updateDepth;
set
{
_updateDepth = value;
if (!SkipHandlers && !SkipCallbacks && UpdateDepth is 0)
RunGameDataChangedCallback();
}
}
Run Code Online (Sandbox Code Playgroud)
我也尝试过(因为在阅读有关 field 关键字时,似乎说该属性必须初始化) = 0;在最后的右大括号之后添加,但这没有帮助。
编译器错误
CS0501 'GameControl.UpdateDepth.get' must declare a body because it is not marked abstract, extern, or partial
CS0103 The name 'field' does not exist in the current context
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
| 归档时间: |
|
| 查看次数: |
1799 次 |
| 最近记录: |