다음 클래스가 있습니다.Null 참조 분석 결과를 로그 파일로 가져 오는 방법
class Tim
{
public Tim()
{
}
public Tom GetTom()
{
return new Tom();
}
}
class Tom
{
public Tom()
{
}
public Jim GetJim()
{
return new Jim();
}
}
class Jim
{
public Jim()
{
}
public Jom GetJom()
{
return null;
}
}
class Jom
{
public Jom()
{
}
public string GetMagicString()
{
return "Hello World";
}
}
다음과 같이 사용됩니다.
class Program
{
static void Main(string[] args)
{
new Tim().GetTom().GetJim().GetJom().GetMagicString();
}
}
는 내가 그것을 실행하면 null 참조 예외가 발생하고 다음과 같이 새로운 Null 참조 분석은 새로운 예외 도우미에서 아름다운 쇼를 발생합니다.
이 명확하게 예외에 대한 책임이 체인에 어떤 방법을 전화 나 같이이 중대하다. 그러나이 코드가 필드에서 실행중인 경우이 오류를 로그 파일에도 기록하고 싶습니다. 이를 위해 catch 블록에서 NullReferenceException을 캡처하면 null을 반환 한 메서드에 대한 정보가 표시되지 않습니다. 이 기능은 VS Exception Helper 대화 상자에서만 사용할 수 있으며이 시점에서 로그 할 수 없습니까?
Visual Studio 디버거와 동등한 기능을 사용하여 코드를 계측하는 방법에 대해 자세히 설명 할 수 있습니까? 나는 그것을하는 법을 의미하고 거기에 어떤 예제/샘플에 대한 링크를 의미합니다. –
@ jimcrown : 죄송합니다, 아니요. 더 자세히 설명 할 수는 없습니다. 이것은 엄청나게 광범위한 질문입니다. 완전히 새로운 디버거를 작성하는 것만은 아니지만이 고급 기능을 추가하는 것만 큼 (VS 팀이 어떻게 구현했는지 모르지만 ... 기존 IntelliTrace 기능을 활용했을 가능성이 가장 높습니다. 이제는 null 참조의 소스를 찾기 위해 거꾸로 추적하기 위해 실제 코드 검사/디 컴파일을 수행합니다. –