2011-08-30 3 views
5

Postsharp와 함께 제공되는 샘플 추적 응용 프로그램을 수정하여 명시 적으로 [QuickTrace]를 켜지 않고 내 네임 스페이스의 모든 클래스에 추적을 적용하려고합니다. 각 클래스의 맨 위에. 스크린 샷을 첨부했습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까 ? 큰 그림을 보려면 이미지를 마우스 오른쪽 버튼으로 클릭 /보기를 클릭하십시오. 고마워요Postsharp 애스펙트 솔루션을 적용하는 방법 (네임 스페이스의 모든 클래스)

enter image description here

+1

이 날 믿어 추가, 당신은 무엇을하고 있는지 이해하는 데 큰 응용 프로그램을 추적 할 때, 먼저 모든 것을 추적하는 것이 좋습니다 .. 이렇게 –

+0

을 원하고 선택적으로 해제하지 않습니다 이해를 시작할 때 필요하지 않은 클래스/메소드. 그냥 내 의견. 감사합니다 – Gullu

답변

4

잘못하고 있습니다. mscorelib (현재 응용 프로그램이 아닌)에있는 메서드에 대한 호출을 래핑하는 mscorelib에 양상을 지정하려고 시도하고 있지만, 사용자가 해당 메서드에만 적용 할 것을 말하면 사실을 부정합니다. Trace 네임 스페이스.

그냥

[assembly: QuickTrace()] 

완료 사용할 수 있습니다. 귀하의 측면에서 다음

[QuickTrace(AttributeExclude=True)] 
[Serializable] 
public QuickTrace : OnMethodBoundaryAspect 
{ 
    //..Aspect code here 
} 
+0

내 대답이 업데이트되었습니다. 귀하의 측면을 귀하의 측면에 적용되지 않도록 제외해야합니다. –

+0

지금 컴파일하지만 콘솔에 추적 라인이 인쇄되지 않습니다. 거의 모든 솔루션/프로젝트가 제외되었습니다. 네임 스페이스 위에 program.cs 있음 Trace [assembly : QuickTrace (AttributeExclude = true)] 감사합니다 – Gullu

+0

아니요, ASPECT 클래스에 추가하십시오. 당신은 지금 모든 것을 배제하고 있습니다. –