2015-01-08 5 views
2

VS2012의 웹 사이트 프로젝트에서 PostSharp 애스펙트를 사용하려고합니다. 그것은 웹 응용 프로그램 프로젝트를 설정할 때 잘 작동하는 것처럼 보일지 만 웹 사이트 프로젝트의 페이지에있는 메서드에 aspect 특성을 적용하면 컴파일되고 제대로 실행되지만 OnMethodBoundaryAspect는 절대로 안타깝습니다. 내가 중단 점을 설정하고 애스펙트 메소드에서 로깅을 시도했다.웹 사이트 프로젝트에서 포스트 샤프 측면을 사용할 수 있습니까?

PostSharp는 웹 사이트 프로젝트를 지원합니까? 그렇다면 무엇을 놓치고 있습니까?

웹 앱 대신 웹 사이트를 사용하려는 이유에 대해 언급하지 마십시오. 불행히도 이것은 요구 사항입니다 (묻지 마십시오).

이 내 측면 코드 (vb.net 모두)하지만, 내가 말했듯이, 그것은 웹 응용 프로그램 프로젝트를 잘 작동 :도 언급 한 바와 같이 (이 정확히 달성하는 open-source project

Imports PostSharp.Aspects 

Namespace TestAopLib 

<Serializable> 
Public Class AopTester 
    Inherits OnMethodBoundaryAspect 

    Public Overrides Sub OnEntry(args As MethodExecutionArgs) 
     MyBase.OnEntry(args) 
     Debug.WriteLine("In OnEntry") 
    End Sub 

    Public Overrides Sub OnExit(args As MethodExecutionArgs) 
     MyBase.OnExit(args) 
     Debug.WriteLine("In OnExit") 
    End Sub 

    Public Overrides Sub OnSuccess(args As MethodExecutionArgs) 
     MyBase.OnSuccess(args) 
     Debug.WriteLine("In OnSuccess") 
    End Sub 

    Public Overrides Sub OnException(args As MethodExecutionArgs) 
     MyBase.OnException(args) 
     Debug.WriteLine("In OnException") 
    End Sub 

End Class 

End Namespace 
+0

왜 PostSharp 사람들은 웹 사이트 "프로젝트"를 귀찮게합니까? 그들은 프로젝트가 아니며 그 (것)들을 좋아합니다. 그들은 아이의 장난감입니다. –

+2

@ JohnSaunders 나는 당신과 의견이 다르지 않지만, 당신의 의견은 도움이되지 않습니다. – ChrisC

+0

그는 포인트가 있습니다. 그들은 단순한 코드를 생성합니다. 그들은 웹 사이트와 관련이 없습니다. 모두가 함께 할 수있는 '아이의 장난감'입니다 (단순한 삶을 위해서 사용하십시오.). – CodingSource

답변

1

CodingSource 제공). 그러나 PostSharp 2.x에서 지원 되었기 때문에 (프로젝트 홈 페이지에 명시된대로) 권장되거나 지원되지 않습니다. PostSharp 3 이상에서는 큰 문제없이 작동하지 않을 가능성이 높습니다.

PostSharp는 웹 사이트 프로젝트에서 사용되지 않는 MSBuild (John Saunders도 언급 함)를 통해 (현재) 통합되어 있습니다.

PostSharp는 명령 행 도구이지만 MSBuild에서 많은 정보를 얻게되므로 별도로 작업하기가 어렵습니다. (처음에는 조언도 문서화도 지원도되지 않습니다.)

P .: 현재 PostSharp 기술을 사용하고 있습니다.

+0

Daniel, 답장을 보내 주셔서 감사합니다. 도구를 추천하지 않으므로 PostSharp에서 일한다고 말하는 것이 필요하지 않습니다.하지만 좋은 생각 일 수 있습니다. 나는 당신이 당신의 프로필에서 그렇게 말하고 있지만 어쩌면 당신의 대답에서도 그렇게 말할 수 있습니다. –

+0

@ JohnSaunders 나는 내 대답이 자신의 제품을 추천하는 것에 가까운 것을 권장하지 않는다는 것을 알고 있습니다. 나는 자신의 제품을 권유하거나 답변의 신뢰성을 향상시킬 때와 동일한 이유로 내 소속을 명시해야한다는 것을 알고 싶습니다. 감사! –

+0

나는 분명히하기 위해 귀하의 소속을 진술하는 것이 좋습니다. 1) 당신이 말하는 것에 대해 알고 있고, 2) 익명의 자기 홍보가 아닙니다. –