๐๊ธฐ๋ณธ ๋จ์ถํค
F9: ์ค๋จ์ ์ค์ /์ญ์
F10: ํ๋ก์์ ๋จ์ ์คํ, ํด๋น ์ค์ ๋ค์ ์ค ์คํ
F11: ํ ๋จ๊ณ์ฉ ์คํ, ํจ์๋ฅผ ๋ง๋๋ฉด ํจ์ ์์ผ๋ก ๋ค์ด๊ฐ
Shift+F11: ํ๋ก์์ ๋๊ฐ๊ธฐ, ํจ์ ๋ฐ์ผ๋ก ๋๊ฐ์ ์คํ
๐ซ ๊ณ ๊ธ ๋จ์ถํค
Ctrl+F9: ์ค๋จ์ ํด์
Ctrl+Shift+F9: ๋ชจ๋ ์ค๋จ์ ์ญ์
Alt+F9: ์ค๋จ์ ์ฐฝ ๋์ฐ๊ธฐ
Ctrl+F10: ์ปค์๊น์ง ์คํ
Ctrl+K, B: ํจ์ ์ค๋จ์
Shift+Alt+F9, T: ์์ ์ค๋จ์
ํจ์ ์ค๋จ์ ๊น์ง ์คํ
๋ฐ์ดํฐ ์ค๋จ์ ์ค์
์ข
์ ์ค๋จ์ ์ค์
์์ ์ค๋จ์ ๋๋ ํตํฉ ์ค๋จ์ ์ค์
์ค๋จ์ ๋ ์ด๋ธ
์ค๋จ์ ๋ด๋ณด๋ด๊ธฐ
์ค๋จ์ ๊ฐ์ ธ์ค๊ธฐ
ํธ์ถ ์คํ ์ฐฝ์์ ์ค๋จ์ ์ค์
Reference
ํจ์ ์ด๋ฆ์ผ๋ก ์ค๋จํ๋ ๋ฐฉ๋ฒ
๋๋ฒ๊ทธ -> ์ ์ค๋จ์ -> ํจ์ ์ค๋จ์
๋๋ Ctrl+K, B
.NET Core 3.x ๋๋ .NET 5+
ํน์ ๊ฐ์ฒด์ ์์ฑ์ด ๋ณ๊ฒฝ๋ ๋ ์คํ์ ์ค๋จ
์๋, ์กฐ์ฌ์ ๋๋ ์ง์ญ ์ฐฝ์์ ์์ฑ์ ๋ง์ฐ์ค ์ค๋ฅธ์ชฝ ํด๋ฆญ, ๊ฐ์ด ๋ณ๊ฒฝ๋๋ฉด ์ค๋จ ์ ํ
.NET Core์ ๋ฐ์ดํฐ ์ค๋จ์ ์ ๋ค์์ ๋ํด ์๋ํ์ง ์์ต๋๋ค.
๋๊ตฌ ์ค๋ช
, ์ง์ญ, ์๋ ๋๋ ์กฐ์ฌ์ ์ฐฝ์์ ํ์ฅํ ์ ์๋ ์์ฑ
์ ์ ๋ณ์
DebuggerTypeProxy ํน์ฑ์ด ์๋ ํด๋์ค
๊ตฌ์กฐ์ฒด ๋ด์ ํ๋
์ข
์ ์ค๋จ์ (Dependent Breakpoint)์ ๋ค๋ฅธ ์ค๋จ์ ์ด ๋จผ์ ์ ์ค๋ ๊ฒฝ์ฐ์๋ง ์คํ์ ์ค๋จ
์ ํ์กฐ๊ฑด์์ ๋ค์ ์ค๋จ์ ์ด ์ ์ค๋ ๊ฒฝ์ฐ์๋ง ์ฌ์ฉ์ ์ ํ
VS ๋ฒ์ ์ ๋ฐ๋ผ ๋ช ์นญ ํ์ธ ํ์
์์ ์ค๋จ์ (Temporary Breakpoint)์ ์ฌ์ฉํ๋ฉด ์ฝ๋๋ฅผ ํ ๋ฒ๋ง ์ค๋จ
์ ํ๋ฆฌ์ผ์ด์
์ ํ ๋ฒ๋ง ์ผ์ ์ค์งํ๊ณ ์ ์ค๋ ์ค๋จ์ ์ ๋ฐ๋ก ์ ๊ฑฐํฉ๋๋ค.
์์ด์ฝ์ ์๊ณ ๋ชจ์์๋ ๊ฒ์ด ํน์ง
์ฝ๋ ์ค ์์ ๋งจ ์ผ์ชฝ ์ฌ๋ฐฑ์ ๋ง์ฐ์ค ์ค๋ฅธ์ชฝ ๋จ์ถ๋ก ํด๋ฆญํ๊ณ ์์ ์ค๋จ์ ์ฝ์
์ ์ ํ
๋๋ Shift+Alt+F9, T๋ฅผ ์ฌ์ฉํ์ฌ ์ํ๋ ์ค์ ์์ ์ค๋จ์ ์ ์ค์
๋๋ ์ด๋ฏธ ์ค์ ๋ ์ค๋จ์ ์ด๋ผ๋ฉด, ์กฐ๊ฑด์์ ์ ์ค๋๋ฉด ์ค๋จ์ ์ ๊ฑฐ๋ฅผ ์ฒดํฌ
์ค๋ฅธ์ชฝ ๋จ์ถ๋ก ํด๋ฆญํ ๋ค์ ๋ ์ด๋ธ ํธ์ง
๊ฒ์๊ธฐ๋ฅ ํ์ฉํ ์ ์์
๋ง์ฐ์ค ์ค๋ฅธ์ชฝ ๋ฒํผ -> ์ ํํ ํญ๋ชฉ ๋ด๋ณด๋ด๊ธฐ
์ํ๋ ์ค๋จ์ ์ ์ฒดํฌํ๊ณ ๋ด๋ณด๋ด๊ฑฐ๋, ๊ฒ์์กฐ๊ฑด๊ณผ ์ผ์นํ๋ ๋ชจ๋ ์ค๋จ์ ๋ด๋ณด๋ด๊ธฐ
๊ฒ์ ์ฐฝ์ ๊ณต๋ฐฑ์ผ๋ก ๋๊ณ , ๊ฒ์ ์กฐใ
ใด๊ณผ ์ผ์งํ๋ ๋ชจ๋ ์ค๋จ์ ๋ด๋ณด๋ด๊ธฐ
์ค๋จ์ ์ฐฝ์์ ํ์ผ์์ ์ค๋จ์ ๊ฐ์ ธ์ค๊ธฐ ์์ด์ฝ์ ์ ํํ๊ณ ์ค๋จ์ XML ํ์ผ์ ์ ํ
ํธ์ถ ํจ์๊ฐ ๋ฐํํ๋ ๋ช ๋ น ๋๋ ์ค์์ ์ค๋จํ๋ ค๋ฉดย ํธ์ถ ์คํย ์ฐฝ์์ ์ค๋จ์ ์ ์ค์
ํธ์ถ ์คํ ์ฐฝ ์ด๊ธฐ
๋๋ฒ๊ทธํ๋ ๋์์ ์ด ์ ์์. ๋๋ฒ๊ทธ ์ค ๋๋ฒ๊ทธ -> ์ฐฝ -> ํธ์ถ ์คํ์ ์ ํ
๋๋ Ctrl+Alt+C
ํธ์ถ ์คํ์์ ์ค๋จ์ ์ค์
ํธ์ถ ์คํ ์ฐฝ์์ ํธ์ถ ํจ์๋ฅผ ๋ง์ฐ์ค ์ค๋ฅธ์ชฝ ๋จ์ถ๋ก ํด๋ฆญํ๊ณ ย ์ค๋จ์ -> ์ค๋จ์ ์ฝ์
์ ์ ํ
๋๋ย F9
ํธ์ถ ์คํ์ ์ผ์ชฝ ์ฌ๋ฐฑ์์ ํจ์ ํธ์ถ ์ด๋ฆ ์์ ์ค๋จ์ ๊ธฐํธ๊ฐ ํ์
๋๋ฒ๊ทธ ์ค๋จ์ : https://learn.microsoft.com/ko-kr/visualstudio/debugger/using-breakpoints?view=vs-2022#BKMK_Set_a_breakpoint_from_debugger_windows