2010-12-22 8 views
2

나는 다음과 같은 코드가있는 경우 ... ReSharper에서 - 조건부 컴파일 XML 주석 오류

#if PocketPC 
     /// <summary>Indicates whether usage of the Windows Mobile 5.0+ GPS intermediate driver is allowed.</summary> 
     private static bool allowGpsIntermediateDriver = true; 

     /// <summary>Indicates whether the device detection thread is currently active.</summary> 
     private static bool isDetectionThreadAlive; 
#endif 

이 ... ReSharper에서 저를 준다 오류 "XML 주석이 유효한 언어 요소에 배치되지 않는다". 때로는 #pragma를 사용하여이를 억제 할 수 있지만 대개는 그렇게 할 수 없습니다. 이 주위에 어떤 방법이 있습니까?

+1

youtrack : http://youtrack.jetbrains.net/issue/RSRP-181007 – AakashM

답변

1

C# 코드가 작동하기 전에 "#define PocketPC"를 C# 파일의 맨 위에 놓습니다.

Resharper를 일시 중단했으며 먼저 정의하지 않으면 찾기 참조 (shift F12)를 사용하여 Visual Studio에서 코드를 가져올 수 없습니다.

Visual Studio에서 정의 된 전 처리기 지시문 "PocketPC"을 분석 할 수 없으며 Resharper 문제가 아닐 수 있습니다.

재미있는 점은 #if 디버그를 사용하면 Visual Studio 빌드 구성을 디버그로 설정 한 경우에만 작동한다는 것입니다. 빌드 구성을 Release로 변경하면 Visual Studio에서 #if DEBUG을 인식하지 못하는 것과 동일한 문제가 발생합니다.

이 지시어를 전역 적으로 정의 할 수 있다면 좋을 것입니다.

+0

흥미 롭습니다 ... #if PocketPC에서는 작동하지만 #else에서는 작동하지 않습니다. - \ – Damien