"The name 'nameof' does not exist in the current context [Assembly-CSharp]"



我在Youtube上跟随这个教程开始我的第一个Unity/c#项目。然而,我被困在大约15分钟的地方,在那里他使用

Invoke(nameof(ReloadLevel(), 1.3f));

在这一点上VSCode和Unity都对象,因为">名称'nameof'在当前上下文中不存在[Assembly-CSharp]">

搜索这个问题显示这个用户和这个用户都被建议更新他们的程序,但我的都是新安装的,所以我不确定问题是什么。我正在使用VSCode 1.74.2, Unity 2021.3.16f1,并拥有微软的c#扩展,v1.25.2。我有万能利器。useModernNet设置为false(无论这是真还是假,问题仍然存在,似乎),并安装。net框架7.0.10,与4.7.1 . net Dev Pack一起,按照c#插件说明。

到目前为止,我已经尝试重新生成我的Assembly-CSharp.csproj"以防它不知何故丢失了。

然而,这并没有奏效。在关闭VSCode的情况下卸载和重新安装。net似乎也没有解决这个问题。

我的期望是有些东西只是没有正确生成-或者我所遵循的教程太过时了(1年),现在有更好的方法来调用这个方法。然而,我不知道如何谷歌特定的解决方案。如有任何帮助,不胜感激。

这是因为括号。你应该写

Invoke(nameof(ReloadLevel), 1.3f);

希望对你有帮助。

相关内容

最新更新