Visual Studio 2015 intellisense添加了不必要的名称空间前缀,然后告诉我它们是不必要的

时间:2018-10-16 14:40:07

标签: visual-studio intellisense

Visual Studio 2015 Intellisense经常但不一致地将名称空间前缀注入到我的代码中,只是(正确)告诉我它们是不必要的,应该删除。

仅当我在打开Intellisense弹出窗口时按'('键时,才会发生这种情况。如果我按任何其他键,则将正确注入类名,而没有名称空间。

我看到了其他一些问题,这些问题没有真正的答案,也有错误的假设,那就是歧义应归咎于此。受影响的代码中绝对没有歧义,因此请节省您的时间和精力,并且不要走这条路。

问题示例:

namespace One.Two.Three.Something
{
    public class TheVeryUniquelyNamedCollectionClass { }
    public class TheBase { }
    public class TheClass : TheBase
    {
        public TheVeryUniquelyNamedCollectionClass Abcd { get; }

        public TheClass()
        {
            Abcd = new Something.TheVeryUniquelyNamedCollectionClass();   
        }
    }
}

在上述情况下,Visual Studio注入“某些东西”。在“ Abcd = new Something.TheVeryUniquelyNamedCollectionClass();”行中,然后立即告诉我这是不必要的,应将其删除。

这是在多个项目和解决方案中发生的,不得不与Intellisense对抗非常令人沮丧。

注意:在上面的示例中,Intellisense现在拒绝表现出带有'('键的这种行为。示例代码没有任何改变。它只是简单地“意识到”了名称空间,因此现在拒绝注入不管我做什么。

注意2:我已经确认Intellisense最终认为不需要名称空间。我转到了另一行代码来展示此问题,然后重新键入5次后,Intellisense现在每次都能正常运行。除了重新键入该行几次之外,没有其他改变。

0 个答案:

没有答案