为什么名为 DefaultStringValue 的 属性 总是在 IntelliSense 中最先出现?
Why does a property called DefaultStringValue always appear first in IntelliSense?
如果定义如下class:
public class Test
{
public string Something { get; set; }
public string AnotherThing { get; set; }
public string DefaultStringValue { get; set; }
}
然后,当您使用 IntelliSense 列出属性时,DefaultStringValue
出现在列表的第一位,尽管这不是按字母顺序排列的:
如果您将 属性 名称更改为 任何其他名称,将恢复正常服务:
有人知道这是为什么吗?我很好奇...
(注:我用的也是Resharper Ultimate 2018.1.2)
这是 IntelliSense (and/or ReSharper),嗯,它是智能的,并试图帮助您重新使用以前使用过的东西。如果你从头开始,你会发现事情是按字母顺序排列的:
我敢打赌,在过去的某个时候,您使用了 DefaultStringValue
属性,而不是其他,所以它首先建议:
重命名后,如果您输入 t.DefaultStringValu = "x";
行,然后再次删除它,下次您输入 t.
并调用 IntelliSense 时,DefaultStringValu
现在将位于列表顶部:
如果定义如下class:
public class Test
{
public string Something { get; set; }
public string AnotherThing { get; set; }
public string DefaultStringValue { get; set; }
}
然后,当您使用 IntelliSense 列出属性时,DefaultStringValue
出现在列表的第一位,尽管这不是按字母顺序排列的:
如果您将 属性 名称更改为 任何其他名称,将恢复正常服务:
有人知道这是为什么吗?我很好奇...
(注:我用的也是Resharper Ultimate 2018.1.2)
这是 IntelliSense (and/or ReSharper),嗯,它是智能的,并试图帮助您重新使用以前使用过的东西。如果你从头开始,你会发现事情是按字母顺序排列的:
我敢打赌,在过去的某个时候,您使用了 DefaultStringValue
属性,而不是其他,所以它首先建议:
重命名后,如果您输入 t.DefaultStringValu = "x";
行,然后再次删除它,下次您输入 t.
并调用 IntelliSense 时,DefaultStringValu
现在将位于列表顶部: