2010-06-12 5 views
4

현재 현지 회사의 고객 응용 프로그램을 만들고 있습니다. customer 테이블에 연결된 datagridview가 있고 업데이트, 삽입 및 삭제가 올바르게 처리되도록 연결하려고합니다. 나는 C#에 대해 매우 익숙해 져서 기초부터 시작한다. (약 2 일 전에 나는 아무것도 알지 못했다 - 나는 vb.net, Java 및 다른 여러 언어를 알고있다.).콘솔 출력 표시 하시겠습니까?

Anything from Debug.WriteLine은 디버그 모드 (상식)에서만 출력해야하지만 Concole.WriteLine을 통한 출력은 디버그 모드에서 나타나야합니다. 그러나 나는 즉시 및 출력 창을 확인하고 아무것도 정상 모드에서 출력되고있다. 아무도 이것이 왜 있는지 전혀 모른다?

편집 : 셀을 클릭하기위한 이벤트 처리기가 있습니다. 셀을 클릭하면 출력되는 CellClicked와 gridview를 보이지 않게 설정해야합니다. 후자는 어느 모드에 있든 작동하지만 CellClicked는 디버그 모드에서만 출력됩니다. Console.WriteLine ("CellClicked")을 사용하고 있습니다.

편집 : 내가 해결했을 수도 있습니다. 프로젝트 설정 페이지에서 콘솔 응용 프로그램으로 출력을 설정했습니다. 이제는 명령 행 창과 창 양식을 열지 만 배포 용으로 컴파일 할 때 다시 출력을 변경할 수 있습니다. 도와 주셔서 감사합니다. 콘솔 애플리케이션 만의 경우 콘솔 윈도우

답변

7

Console.WriteLine() 출력한다.

아마도 Trace.WriteLine()을 찾고있을 것입니다.

+0

추적은 분명히 디버깅의 한 형태입니다. 디버깅을하고 싶지 않습니다. 디버그 모드를 사용하면 앱을로드하는 데 걸리는 시간이 늘어납니다. (적어도 필자는 시간을 줄이는 것을 볼 수 없습니다.)) 그래서 가능한 한 디버그 모드를 사용하지 않으려합니다. 이상한 문장을 출력하고 디버그 모드를 사용하지 않고 올바른 시점에 특정 지점에 도달하는지 확인하려고합니다. – ClarkeyBoy

+1

추적을 사용하거나 사용하지 않을 수 있습니다. 앱을 디버그 모드로 전환 할 필요는 없습니다. – starskythehutch

+0

@ClarkeyBoy : 당신이 묘사하는 것은 정확히 무엇을 추적하고 있는지입니다. 추적을 가능하게하기 위해 디버그 모드에서 앱을 가질 필요는 없습니다 ... –

0

도구 | 옵션 | 디버깅, 일반, 모든 출력 창 리다이렉트 텍스트를 바로 가기 창으로 선택하거나 콘솔에서 의도 한 출력을 파일에 기록한 다음 대신 보도록하십시오.

3

Visual Studio 출력 창에 작성된 Console.Write/Line()의 출력을 얻는 것이 Visual Studio 호스팅 프로세스의 기능입니다. 프로젝트 + 속성, 디버그 탭. 디버거없이 앱을 실행하면 호스팅 프로세스가 사용되지 않는 경우에는 작동하지 않습니다.

디버깅을 위해 Console.WriteLine을 사용하는 것이 가장 좋은 방법은 아닙니다. 이 코드는 릴리스 빌드에서 계속 실행되며 출력 문자열을 시간 형식화합니다. 그리고 JIT 옵티마이 저가 가장 효율적인 기계 코드를 생성하는 것을 막아줍니다. 출력은 비트 버킷에 떨어지며 실제로 쓰지는 않습니다.

디버거는 프로그램에서 어떤 일이 벌어지고 있는지 알아내는 데 더 좋은 도구를 제공합니다. 시간을내어 기능에 익숙해 지도록하십시오. 이벤트 처리기가 실행되는지 알아 보려면 중단 점을 설정하십시오. 이러한 중단 점은 실제로 중단하지 않고도 출력을 추적 할 수 있습니다. 빨간색 점을 마우스 오른쪽 버튼으로 클릭하고 "적중"을 클릭 한 다음 "메시지 인쇄"옵션을 사용하십시오.

+0

+1 때 "때 맞음"=> "메시지 인쇄"옵션 :) –

1

추적 인프라가 Console.WriteLine보다 훨씬 좋을 것이라고 생각합니다. 추적을 사용하면 추적 메시지의 위치와 추적 기능을 켜거나 끌 수있는 여러 가지 옵션이 제공됩니다. 또한 추적 출력의 레벨을 다르게 설정하여 실제로 기록되는 양을 조정할 수 있습니다. .NET에서 내장 된 추적 기능은 매우 유연하며 배우기에 충분한 투자 가치가 있습니다.

다음은 시작하는 데 도움이되는 참조의 커플 :

HTH!
크리스