2011-04-15 5 views

답변

3

여기 그 해결하는 한 가지 방법 :

System.Exception      e; // declare 

을;

try 
{ 
     ... code that can throw clr error 
} 
catch (Exception::CLRError) 
{ 
     e = CLRInterop::getLastException(); 

     while(e) 
     { 
      info(e.get_Message()); 
      e = e.get_InnerException(); 
     } 
} 

또한 여기에서 자세한 내용을보실 : http://blogs.msdn.com/b/emeadaxsupport/archive/2010/07/22/working-with-clr-exceptions-in-dynamics-ax-x-code.aspx

+0

나는 예외가 주위에 우리가 만드는 모든 CLR 호출을 처리 넣어 가지고 싫어. 거기에 그렇게 그냥 정보/오류 로그 또는 뭔가에 오류를 넣어 것입니다 설정 아닌가요? –

+0

CLR에 종속성이있는 코드를 추가하는 경우 필요한 것은 아닙니다. 모범 사례를 따르려면 CLR Interop 권한을 주장해야합니다. Info 클래스와 add() 메소드를 수정할 수 있다고 생각합니다.하지만 그건 나쁜 습관이 될 것입니다. 이것이 어떻게 AX2012에서 해결되는지 보는 것이 흥미로울 것입니다. AX 2009의 경우 모범 사례 지침이 있으며 CLR에 의존하는 코드가 필요할 때는 오류 처리가 제대로 수행되었는지 확인해야합니다. http://msdn.microsoft.com/en-us/library/ee677495.aspx – Skaue

관련 문제