는 방법이 있을 할당 방법을 조건 또는 추가 preprosessor 지시어에서 실행시간에서는 C#?

StackOverflow https://stackoverflow.com/questions/814337

문제

목표로 전환할 수 있으려면 디버깅을 호출에 실행 시간에서 데이터베이스에서 생산 구축을...

도움이 되었습니까?

해결책

니포인트의 조건부 방법 및 전처리기는 지시어들이 사용하면 컴파일러가 생략 코드에서는 최종 실행 파일을 실행합니다.런타임은 해당 이 if 문입니다.

그러나, 측면을 지향 프로그래밍 가 대략 동등한 무엇을 요구하고 있는 점에서,그것은 당신을 주입하는 코드로 실행되는 프로그램이 그렇지 않으면 거기에 있습니다.

편집: 조으로 언급하는 방법은 이렇게 하는 프로그램에 대해 로깅 프레임워크는 다음과 같 log4net 할 수 있는 세밀한 제어 기록됩니다.

다른 팁

사전 프로세서 레벨이 아닙니다. 결국, 당신은 그 과정의 결과를 실행하고 있습니다. 물론, 사전 프로세서 검사를 일반 코드 검사로 변경할 수 있으며, 이는 필요에 따라 분명히 전환 할 수 있습니다.

아니요, 그러나 대부분의 로깅 하위 시스템 이이 기능을 제공합니다. 예를 들어 Log4Net을 사용하면 로깅 레벨을 동적으로 변경하거나 System.Diagnostics.Trace를 사용하는 경우 변경할 수 있습니다. 추적 스위치 동적으로 레벨.

분명히 이진 코드에 영향을 줄 수는 없습니다 (#if 문과 같은).

내가 일반적으로하는 일은 내 코드에 많은 로깅이 포함되어 있는지 확인하는 것입니다. 추적 스위치. 이렇게하면 로깅이 거의 없거나 전혀없는 시스템에서 시스템을 실행할 수 있으며 일부 문제를 조사하려면 구성 파일을 변경하여 로그 켜기를 전환 할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top