[英]Why doesn't VS 2008 display extension methods in Intellisense for String class
由於String實現了IEnumerable<char>
,因此我希望在Intellisense中看到Enumerable擴展方法,例如,在輸入句點時
String s = "asdf";
s.
我期待看到.Select<char>(...)
.ToList<char>()
等等。我當時驚訝地看到,擴展方法在String類的工作其實這樣做 ,他們只是不出現在Intellisense中。 有人知道為什么嗎? 這可能與這個問題有關。
這是通過明確的設計。 問題是雖然String絕對實現了IEnumerable<T>
,但大多數人都沒有想到它,或者更重要的是以這種方式使用它。
String只有很少的方法。 最初我們沒有過濾String的擴展方法,結果是很多負面反饋。 使用正確的導入,它有時幾乎使方法數量增加了兩倍。 顯示所有擴展方法后,人們常常看不到他們在噪聲中尋找的String方法。
字符串是......簡單類型,最好以這種方式查看:)
完全可以在字符串上調用擴展方法。 它很可能不會出現在intellisense中。
編輯:字符串實際上有很多方法。 但由於它們中的許多都是超載,它們在智能感知中崩潰了。
有關信息,這在VS2010中已經發生了變化(至少在beta 2中)。 看起來這個過濾已被刪除(可能是它引起了太多混亂),現在這些方法與擴展方法字形一起可見。
這應該。
For example you can write it public static string myExtensionMethod(this String yuppi){
}
那應該是在那里。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.