我有一个与IntelliSense相关的问题,它让我疯狂,我保持冷静了一个月,但现在无法忍受了。 IntelliSense一直建议一些明显不正确的东西。
比如说我有一个名为“PlayerModel”的类和一个该类型的字段/参数名为“playerModel”。
当我开始输入“player”时,我期望建议列表将从字段/参数开始,而不是从类开始,尤其是因为该类显然不包含我可能正在使用的公共常量或其他任何内容。 但事实并非如此,每次IntelliSense都会给我这个: 显然我想引用参数而不是类。即使我需要给一个字段赋值,这也不起作用。
比如说我有一个名为“PlayerModel”的类和一个该类型的字段/参数名为“playerModel”。
当我开始输入“player”时,我期望建议列表将从字段/参数开始,而不是从类开始,尤其是因为该类显然不包含我可能正在使用的公共常量或其他任何内容。 但事实并非如此,每次IntelliSense都会给我这个: 显然我想引用参数而不是类。即使我需要给一个字段赋值,这也不起作用。
PlayerModel anotherPlayerModel = player...
它还会建议使用类而不是该参数。因此,每次我需要手动选择第二个(正确的)建议。
请帮忙,我认为这应该是常识。谢谢!
这是我的安装包细节:
Microsoft Visual Studio Community 2017
版本 15.8.5
VisualStudio.15.Release/15.8.5+28010.2036
Microsoft .NET Framework
版本 4.7.02556
已安装版本:Community
C# 工具 2.9.0-beta8-63208-01
FormatDocumentOnSave 1.0
NuGet 包管理器 4.6.0
ProjectServicesPackage 扩展程序 1.0
Visual Basic 工具 2.9.0-beta8-63208-01
Visual Studio Code 调试适配器主机包 1.0
Visual Studio Unity 工具 3.8.0.7
这是我的PlayerModel
类:(忽略与Unity相关的内容,它与类的结构无关)
using UnityEngine;
using static Constants;
public class PlayerModel : ObjectModel {
public int userId;
public int activeItemIndex;
public int kills;
public PlayerModel(int id, Vector3 position, Quaternion rotation, float hitpoints, int userId, int activeItemIndex) : base(id, ObjectType.PLAYER, position, rotation, hitpoints) {
this.userId = userId;
this.activeItemIndex = activeItemIndex;
}
}
PlayerModel
类的定义。 - Martin Asenov