2011-02-14 7 views
3

사전 값은 CLR 디버거에서보기 흉한 것으로 보입니다. 그 (것)들을 친절한 방법으로 나타나는 방법 있는가? 이러한 모든 재귀 적으로 중첩 된 속성 대신 키와 값만보고 싶습니다.사전은 CLR 디버거 (DbgCLR)에서 못 생겼습니다

screenshot

UPD : 가장 좋은 트레이드 오프는 지금까지 발견 :

new ArrayList(myDictionary).ToArray() 

enter image description here

+0

사용중인 Visual Studio의 버전은 무엇입니까? – Adeel

+0

Visual Studio를 사용하고 있지 않습니다. CLR 디버거는 .NET SDK (DbgCLR)와는 별도의 프로그램입니다. – thorn

답변

0

내 질문에 답해주세요.

Visual C# 2005 Express를 설치 한 후에 상황이 훨씬 좋아졌습니다. 자, CLR 디버거에서도 맞춤형 비주얼 라이저를 사용할 수 있습니다 (@dkson에 대한 언급에 감사드립니다)!

screenshot

1

요점은 당신이 당신은 단지 키와 값을보고 싶다 말할 때, 이것은 이러한 객체에서 적어도 ToString() 호출을 의미하며 Debugger는 이것이 실제로 필요한 것임을 확신하지 못합니다. 예를 들어 Student 클래스를 키로 사용하는 경우 성 또는 첫 번째 이름 e 또는 평균 시험 마크가 표시됩니까? 나 자신의 클래스에서 ToString() 메서드를 재정의 한 경우에 디버거가 작동하는 것을 알지 못한다. 기본적으로 sire를 기본적으로 확장 가능한 계층 구조로 표시합니다.

1

유형의 디버그보기를 사용자 정의 할 수있는 DebuggerTypeProxy 속성을 사용할 수 있습니다.