VisualStudio2010. 12. 2. 13:27

Tip이라기보단 단축키 모음입니다...

* IntelliSense 제안모드 : Ctrl + Alt + Space (개발자가 임의의 클래스 또는 프로퍼티를 생성하고자 할 때 해당 단축키로 인텔리센스의 제안모드를 On/Off 할 수 있습니다)

* Call Hierarchy : (Ctrl + K , Ctrl + T) or (Ctrl + W or Ctrl + K)

매서드를 호출하는 곳 또는 매서드 내부에서 사용하는 프로퍼티나 매서드 목록을 트리형태로 보여줍니다.

Call To '매서드이름' : 매서드를 호출하는 매서드 목록

Call From '매서드이름" :매서드 내부에서 사용중인 매서드와 프로퍼티목록

* 코드 정의창 : Ctrl + W + D

커서가 있는 매서드나 클래스의 소스를 보여줍니다.

* Highlight된 Text 간의 이동 : Ctrl + Shift + Up , Down

커서를 올려놓으면 생기는 Highlight된 구간을 탐색할 때 사용합니다.

Ctrl + F10 : 현재 커서가 존재하는 곳까지 디버깅을 실행합니다.

----------------------------------------------------------------------------

Visual Studio 에서 Temp Project 만드는 법

Tool -> Options -> Projects and Solutions 에서 Save new projects when created 의 체크를 풀어주시면 됩니다.

그럼 새로 프로젝트 생성할 때 어느 경로에 프로젝트를 만들 것인지 물어보지 않고 AppData 아래에 솔루션을 만듭니다.

이 TempProject는 솔루션을 닫을 때 저장할 것인지 버릴 것인지 물어보고 버린다고 하면 임시폴더에서 이 TempProject를 삭제합니다.

단점으로는 단일 프로젝트만 가능하다는 점과 경로가 필요한 웹어플같은 경우에는 사용할 수 가 없습니다.

---------------------------------------------------------------------------

디버그 중단점 팁!!

중단점에 오른쪽버튼 클릭하고 When Hit... 라는것을 클릭하면

Print a message 라는 check 박스가 있고 이것을 체크하게 되면

메세지를 쓸 수 있습니다.

여기는 문자열이 들어감으로 Debug.WriteLine를 쓴 것처럼 Output에 value값이 출력됩니다.

When Hit를 설정한 중단점이 사각형으로 변하게 되고 이 라인에서는 중단되지않고 넘어갑니다. 그 후 output출력창에 보면 출력값을 확인해 볼 수 있습니다. Debug.WriteLine보다 좋은점은 코드에 불필요한 코딩이 들어가지 않아서 불필요한 부분을 지우는 작업이 필요없다는 것 정도일까요??

--------------------------------------------------------------------------

Debug 타임에 마우스를 올리면 현재 변수에 어떤 값이 들어가 있는지 볼 수 있는데 자세히 보면 옆에 Pin을 꽂을 수 있는 기능이 있습니다.

이렇게 Pin으로 고정시켜두면 다음 디버깅때 마우스를 올려놓지 않아도 값을 확인해볼 수 있습니다. +로 확대한 후에 각 프로퍼티별로도 Pin기능을 사용할 수 있고 밑으로 향하는 화살표를 클릭해서 Comment 도 달수 있는 기능을 제공하고 있습니다.

디버깅중에 핀에서 걸리는 데이터는 마지막 디버그 세션의 데이터를 사용하고 비주얼 스튜디오가 중지되기 전까지 세션이 살아있다고 하네요

-------------------------------------------------------------------------

Todo List 만드는 법입니다

주석으로 //TODO 라고 작성한 후에 Ctrl + W + T 를 누르면 TODO 리스트를 볼 수 있습니다. Tools -> Options 에서 Eniviroment -> Task List 에서 주석에 사용할 token을 정의해서 사용할 수 도 있습니다

------------------------------------------------------------------------

IntelliTrace 를 사용하면 중단점에 걸렸던 내역들을 Stack에 저장해서

어느실행 때 어떤 값이었는 지 확인 할 수 있고 내 컴퓨터에서 실행헀던 디버그 내역을 다른컴퓨터에서 실행해 볼 수도 있습니다.

단 컴파일 가능한 소스코드가 있어야 한다는 단점이 있지만요...

tools -> options -> IntelliTrace 에 가면 trace파일을 저장하는 경로와 저장할 용량의 최대크기 IntelliTrace가 어떤 동작에서 로그를 저장할 것인지에 대한 세팅이 가능합니다.

-------------------------------------------------------------------------

C# 3.5에서는

​IEnumerable<ITest> tests = new List<Test>()

or

IEnumerable<ITest> iTests = null;
            List<Test> tests = new List<Test>();

            iTests = tests;

이런식의 생성이나 할당이 불가능 했지만

IEnumerable을 사용할 때에

C# 4.0에서는 된다고 하네요...

다른것도 가능한지 찾아봐야 겠어요

-----------------------------------------------------------------------------

이상입니다!!

Posted by 동동(이재동)