나는 뭔가를 디버깅 중이며 뭔가가 설정 될 때를 알아야합니다. x = 5에서와 같이 명시적인 세트가없는 것 같습니다. 그러면 어쨌든 설정되지 않았는지 확인해야할까요? 특히 기본 설정기를 중단하여? 문제는 충분히 명확하지 않으면기본 C# getter 또는 setter에서 어떻게 깨지십니까?
는 :
using System.Diagnostics;
Debugger.Break();
당신은 할 수 있습니다 :
감사
나는 뭔가를 디버깅 중이며 뭔가가 설정 될 때를 알아야합니다. x = 5에서와 같이 명시적인 세트가없는 것 같습니다. 그러면 어쨌든 설정되지 않았는지 확인해야할까요? 특히 기본 설정기를 중단하여? 문제는 충분히 명확하지 않으면기본 C# getter 또는 setter에서 어떻게 깨지십니까?
는 :
using System.Diagnostics;
Debugger.Break();
당신은 할 수 있습니다 :
감사
public FooClass
{
FooClass() { }
public int x { get; set; } //How do I break in the setting of this property?
} 당신은 강제로 디버거가 중단 될 수 있습니다 그래도 명시적인 배경 필드를 사용하여 자동 속성을 확장하십시오.
public class FooClass {
private int _x;
public int X {
get {
return _x;
}
set {
_x = value;
Debugger.Break();
}
}
}
.. 또는 위와 같이 속성을 확장 한 다음 직접 중단 점을 지정하십시오.
getter 또는 setter 내에 코드가있는 경우 해당 코드에서 휴식을 취할 수 있으므로 해당 속성에 대한 비공개 멤버를 만들 수 있습니다.
private int _x;
public int X {
get {
return _x;
}
set {
_x = value;
}
}
이렇게하면 return _x 및 _x = value 행에 중단을 넣을 수 있습니다.
에서 지침을 찾을 수 있습니다. 왜 내가 그걸 생각하지 않았는지 모르겠다! – gordlonious
속성 줄을 마우스 오른쪽 버튼으로 클릭하고 거기에 중단 점을 설정해 보았습니까? – Tim
예, 맞지 않습니다. 그러나 단순히 설정되지 않기 때문일 수 있습니다. 물론 그 줄에 중단 점을 설정하면 효과가 있다는 것을 알지 않는 한. – gordlonious
이 [스레드] (http://stackoverflow.com/questions/4408110/debugging-automatic-properties) – Andrei