WCF 서비스 코드를 디버깅하려고 할 때 "감시 추가"기능에서 "식 평가 기의 내부 오류"가 표시됨 (MSVS 2013)


114

며칠 전에 내 솔루션을 MSVS 2013으로 옮겼습니다. 한 가지를 제외하고는 잘 작동합니다. WCF 서비스의 코드를 디버그하려고하면 작동하지만 변수의 상태를보고 싶을 때 다음과 같이 말합니다. "식의 내부 오류 평가자 ". Add watch 기능은 클라이언트 측에서 정상적으로 작동하지만 서비스 코드에서는 손상되었습니다. localhost에서 실행되는 내 자신의 WCF 서비스를 디버깅하려고합니다. 이걸 어떻게 고칠 수 있나요?

여기에 이미지 설명 입력

MSVS 정보 : Microsoft Visual Studio Professional 2013 버전 12.0.30110.00 업데이트 1 Microsoft .NET Framework 버전 4.5.51641 OS : Windows 8.1


MSVS2012에서는 제대로 작동합니다 (Microsoft Visual Studio Professional 2012 버전 11.0.61030.00 업데이트 4 Microsoft .NET Framework 버전 4.5.51641)
Ceridan

나는 또한 그 메시지를보고 있으며 방금 2012에서 2013으로 업그레이드했습니다.
Gary

나는 그것이 오류없이 작동 2012 년과 2013 년에 여전히 나를 위해 깨진, 2012 롤백에이
Ceridan

VS 2013에서도 동일한 오류가 발생합니다.
zulucoda

답변:


228

이것은 Visual Studio 2013과 함께 제공되는 새로운 (관리되는) 디버그 엔진의 버그 일 수 있습니다. Tools-Options-Debugging 아래 에있는 Managed Compatibility Mode (2013 년 이전 디버그 엔진으로 효과적으로 전환됨)를 설정해보십시오 .

이 방법으로 문제가 해결되면 작은 프로젝트로 재현 한 다음 Connect 에서 보고 하여 해결할 수 있습니다.

@bjhuffine 은 호환성 모드를 전역 적으로 비활성화하지 않고 (예 : 프로젝트 별) 활성화하는 다른 방법이 있다고 아래에 설명합니다. 자세한 정보 : https://devblogs.microsoft.com/devops/switching-to-managed-compatibility-mode-in-visual-studio-2013/


7
이는 2015 CTP 6. 비주얼 스튜디오 내 같은 문제를 해결
크리스 Schiffhauer

1
이 구성으로 문제가 해결되었지만 진단 도구가 작동을 멈췄습니다.
Xepe 2015 년

6
이렇게하면 Visual Studio 2015 RTM에서 동일한 문제가 해결되고 새 진단 도구가 비활성화되었지만 Visual Studio 2013에서는이 문제가 발생하지 않았습니다.이 문제를 가정용 컴퓨터에서 테스트하고 비교해야합니다.
ahwm

2
당신은 천재 내 친구입니다! 나는 또한 추가 설명을 추가 할뿐만 아니라 큰 해머 글로벌 변화를 원하지 않는 경우이를 수행하는 다른 방법을 보여주는 이것을 발견했습니다. blogs.msdn.com/b/visualstudioalm/archive/2013/10/16/…
bjhuffine

11
추가하기 만하면됩니다. 이 옵션이 회색으로 표시하는 경우, 당신은 정지 디버깅에 필요)
Radderz


2

Igal의 대답을 시도했지만 저에게 효과가 없었지만 저에게 효과가있는 솔루션을 찾았습니다. 시계를 지우고 항목을 다시 추가하기 시작했습니다. 현재 하위 또는 함수 내에없는 항목을 추가하려고하면 내부 오류가 발생한다는 것을 알았습니다.

잠수함이나 기능 내부에서 다른 항목을 추가하여 문제를 해결했는데 다시 오류가 발생하지 않았습니다.


내 상황에서는 메서드 범위 내에 감시 항목을 추가해도 오류가 발생하지만 "관리되는 호환성 모드 사용"이 포함 된이 솔루션이 도움이됩니다.
Ceridan

0

Michael Freidgeim의 답변은 내 문제를 디버그하는 데 도움이되었습니다. 하지만 문제의 원인에 대한 추가 세부 정보를 추가하고 싶습니다. 질문자의 질문과 약간 관련이 있지만 그의 오류는 매우 오해의 소지가 있습니다.

우리는 GridDateTimeColumn과 함께 Telerik 컨트롤 RadGrid를 사용했습니다. 이러한 그리드의 MinDate 속성은 기본적으로 01/01/1980이므로이 열보다 작은 날짜를이 열에 바인딩하면이 오류가 표시됩니다. 이상한 점은 원래 바인딩 및 표시가 문제를 일으키지 않았고 다른 페이지로 이동할 때만 오류가 발생했다는 것입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.