2010-11-20 3 views

답변

4

내가 .NET 2.0 및 .NET 4.0에서 테스트했습니다, 그리고 예상대로 내가 123.4으로 dec를 얻을. 당신은 아마도 브레이크 포인트가 너무 높지 않을 것이라고 확신합니까?

+0

감사합니다. 다시 테스트하고 Visual Studio/디버거의 이상한 동작으로 보입니다. 두 번째 줄을 실행 한 후 dec 변수로 마우스를 가져 가면 dec은 null이지만 실제 dec의 값은 예상대로 123.4입니다 (예 : 콘솔에 쓰는 경우). 그게 내가 먼저 작동하지 않는다고 믿게합니다. –

0

캐스팅에서 호출되는 암시 적 변환이 실패하고, Decimal 값을 null 값으로 남겨 두는 것이 좋습니다. 가장 잘 추측되는 것은 잘림/반올림 된 값이 아닌 값입니다.

2

십이, null가 아닌 자사의 123.4

0

아니요. 다른 곳에 오류가 있어야합니다.

1

나는 이것이 똑같은 것을 지적 할 것이다. 귀하의 코드는 예상대로 123,4를 제공합니다. 그것은 잘 작동합니다.

난 그냥이 시도 말할 수있다 :)하지만 결과는 동일합니다 : 123,4

double? d = 123.4; 
decimal? dec = (decimal?)d.Value; 
관련 문제