Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为什么在IntelliSense中名为DefaultStringValue的属性总是首先出现?_C#_Visual Studio 2017_Resharper_Intellisense - Fatal编程技术网

C# 为什么在IntelliSense中名为DefaultStringValue的属性总是首先出现?

C# 为什么在IntelliSense中名为DefaultStringValue的属性总是首先出现?,c#,visual-studio-2017,resharper,intellisense,C#,Visual Studio 2017,Resharper,Intellisense,如果定义以下类: public class Test { public string Something { get; set; } public string AnotherThing { get; set; } public string DefaultStringValue { get; set; } } 然后,当您使用IntelliSense列出属性时,DefaultStringValue将首先显示在列表中,尽管它不是按字母顺序排列的: 如果将属性名称

如果定义以下类:

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(和/或Resharper)作为智能体,试图帮助您重新使用以前使用过的东西。如果你从头开始,你会发现事情是按字母顺序排列的:

我敢打赌,在过去的某个时候,您使用了
DefaultStringValue
属性,而不是其他属性,因此它首先建议:

重命名后,如果输入行
t.DefaultStringValu=“x”
,然后再次删除它,下次输入
t.
并调用IntelliSense时,
DefaultStringValu
现在将位于列表的顶部:


您正在使用Resharper吗?是的,我正在使用。可能应该在问题中提到这一点。Resharper Ultimate 2018.1.2.请注意,在您的问题中加入信息永远都不会太迟…Doh。是的,你当然是对的。我相信过去我一直在无意识地依赖这种行为,现在我想起来了。