3

방금 ​​Visual Studio 2015를 사용하기 시작했으며 자동 구현 된 속성을 디버깅 할 때 VS2012/VS2013과 다르게 동작하는 것으로 나타났습니다.VS2015에서 자동 구현 속성에 대해 단계별 실행을 어떻게 해제합니까?

public int MyProperty { get; set; } 

예 :

내가 클래스에 정의 된 속성을 말해봐. getter와 setter가 컴파일러에 의해 효과적으로 생성되는 자동 구현 된 속성입니다.

나는 예를 들어, 메서드 호출의 일부로서, 나중에이 속성을 참조 할 수 있습니다 :

{ 
    DoSomeStuff(MyProperty); 
} 

내가 그때까지 기다리 DoSomeStuff에 전화를 디버깅하고 그 줄에 중단 점을 넣어하려는 경우 F11에서 호출로 넘어가려면 VS2015 디버거가 MyProperty (이전 버전에서는 자동 구현 속성의 경우 getter 및 setter를 무시)의 getter로 이동합니다.

자동 getters & setters에 중단 점을 넣을 수있는 기능을 설명하는 blog post을 발견했으며,이 기능이 일부 경우에 유용 할 수 있음을 알 수 있습니다. 그러나 필자의 경우 코드 포인트가 자동으로 구현되는 많은 속성을 가지고 있고 그것들에 대한 액세스가 종종 중첩 된 경우 (예 : DoSomeStuff(X.Y.Z))와 같이 이러한 방법을 중 단 또는 중단하는 것에 관심이 없습니다.

요약하면 VS2015의 자동 구현 속성에 대한 새로운 Step Into 동작을 비활성화 할 수 있습니까? 그렇다면 어떻게해야합니까?

은 (내가 디버깅 옵션의 체크 박스에 "속성과 운영을 통해 단계"를 발견,하지만 난 모든 속성의 getter/setter를, 단지 그 자동 구현 속성을 통해 단계 싶지 않아요.)

+0

일반적으로 '항상 단계별 속성'을 사용하는 것이 가장 좋습니다. 특정 속성 코드를 실제로 디버깅해야 할 때만 수행하십시오. 문맥 메뉴에는 스테핑과 관련된 많은 옵션이 있습니다. – Phil1970

답변

3

이동 VS2015 옵션 -> 디버깅 -> 일반 및 틱 "속성 및 연산자 건너 뛰기"를 참조하십시오.

+0

나는 내 대답을 편집하여 일반적인 동작을 변경하는 방법을 알려줍니다. – Kinetic

+1

원자력 발전소의 핵이라 할지라도 이것을 대답으로 표시했습니다. 자동 구현 된 속성뿐만 아니라 * 모든 속성에 대해 단계를 방해하지 않습니다. 특히 이전 VS 버전의 동작이 변경되었으므로 하나를 방지하고 다른 하나를 방지 할 수있는 방법이 없다는 사실에 매우 귀찮습니다. –