Aşağıdaki kodda:Neden Visual Studio hata ayıklayıcı, genel tür bağımsız değişkenleri içeren ifadeleri düzgün şekilde değerlendirmez?
private static void Main(string[] args)
{
var listy = new List<DateTime> { DateTime.Now };
MyMethod(listy);
}
static void MyMethod<T>(List<T> myList)
{
// put breakpoint here
}
Hata ayıklayıcısını kırıyorsam, QuickWatch'ı "myList" de açın, görüyorum:
myList
[0]
Raw View
"[0]" düğümünü seçtiğimde ve Ekle'yi tıklattığında İzleyin, İzle'ye eklenen ifade:
(new System.Collections.Generic.Mscorlib_CollectionDebugView<System.DateTime>(myList)).Items[0]
Bu ifade doğru görünüyor, ancak saat penceresi şu hatayı gösteriyor:
The best overloaded method match for 'System.Collections.Generic.Mscorlib_CollectionDebugView.Mscorlib_CollectionDebugView(System.Collections.Generic.ICollection)' has some invalid arguments
Bu hata ayıklayıcıda bir hata gibi görünüyor . Bu neden oluyor? Ve herhangi bir yerde belgelenmiş mi?
Bir şekilde myList ile ilgili bir sorun var, bir statik değişken kullanırsanız çalışır. Connect to post.microsoft.com –
Microsoft [Düzeltildi olarak bildirdiğim hata raporunu işaretledim] (https://connect.microsoft.com/VisualStudio/feedback/details/684678/visual-studio-debugger-c-expression-evaluator- -sağlam-ile-bağlı-jenerik-türleri), bu yüzden umarım bu dev11'de olmaz. –