Visual Studio 2010在intellisense中两次列出相同的枚举

时间:2011-11-24 07:30:38

标签: c# visual-studio-2010 intellisense

我正在使用Visual Studio 2010 Professional。在这个问题中,CardSet是在“实体”命名空间中声明的枚举。

当我开始输入“Car”时,如果我点击标签页,则自动完成功能始终为Entities.CardSet,而不仅仅是CardSet。这发生在与枚举相同的命名空间中声明的类方法中。

枚举在Intellisense中列出两次:

枚举和正在编辑的类的源文件位于不同的文件夹中。 CardSet仅被声明一次。第二个命名空间中没有单独的CardSet枚举。

奇怪的是,“实现抽象类”生成的代码不使用命名空间 - 它正确使用较短的CardSet

如何让Visual Studio从智能感知中获取Entities.CardSet,这样我就可以输入
“Car + Tab ”?我尝试重启Visual Studio无效。

2 个答案:

答案 0 :(得分:2)

我只是面对面。这是因为类上还有一个属性叫做CardSet。我需要解决这个问题。我只是注意到Intellisense中的图标是不同的:一个是属性,另一个是枚举。

答案 1 :(得分:2)

它没有两次列出枚举。它列出了两个条目,因为您可能需要引用两个不同的内容:类型中的CardSet属性/字段,或枚举类型本身(Entities.CardSet)然后引用特定成员枚举。注意图标是如何不同的。

这种行为对我来说似乎并不合理 - 它真的会影响你的生产力 吗?如果您确实不想键入所有七个字符,只需从下拉列表中选择正确的值即可。