2011-08-09 3 views
1

수학 라이브러리를 사용할 때. 이렇게.메서드가 호출 된 줄에 예외를 throw하지 않습니다.

14- int Result = 0; 
15- Math.DivRem(1, 0, out Result); 

예외는 15 행에 표시되어 있지만, 내 자신의 수학 라이브러리를 사용하면 예외입니다.

class MyMath 
{ 
    public static decimal DivRem(int a, int b) 
    { 
     return a/b; 
    } 
} 

입니다.

14- int Result = 0; 
15- MyMath.DivRem(1, 0); 

오류는 내 정적 DivRem의 "return a/b;"행에 있습니다.

어떻게 할 수 있습니까?

아이디어가 있으십니까? 감사.

답변

0

호출 어셈블리가 컴파일 된 릴리스 버전 만 참조하는 별도의 어셈블리에 자신의 수학 라이브러리를 배치하십시오.

+0

내 웹 사이트와 동일한 솔루션으로 내 라이브러리가 있습니다. 어떻게하면 릴리스 DLL 버전에 대한 참조를 추가 할 수 있습니까? – Fraga

+0

솔루션에서 제거하고 (자체적으로 넣은 다음) 참조 추가를 클릭하고 .dll을 찾습니다. –

+0

지금 내 릴리스 DLL이 내 프로젝트에 추가되었으며 예외는 여전히 동일 장소에 있습니다. – Fraga

0

this 질문을보십시오. PDB는 해당 행 번호를 얻는 데 필요한 디버그 정보를 보유하고있는 것 같습니다. .NET Framework의 모든 클래스에 대한 PDB 파일이 의심 스럽기 때문에 운이 없다고 생각합니다. 나는 틀릴 수도 있고, 사용할 수도 있지만 적어도 지금 무엇을 찾아야 할지를 안다.

0

디버거가 특성이있는 메서드를 단계별로 처리하도록 지시 할 수 있습니다. 나는 이것이 또한 호출 사이트에서 Exception을 보여줄 것이라고 의심하지만, 확실하지 않습니다.

class MyMath 
{ 
    [DebuggerStepThrough] 
    public static decimal DivRem(int a, int b) 
    { 
     return a/b; 
    } 
} 
+0

이 속성은 디버거 전용이므로 프레임 워크 메소드처럼 작동하지만 예외는 여전히 내부에 있습니다. – Fraga

관련 문제