|
.NET TIPS デバッグ時にメソッドをステップイン実行しないようにするには?デジタルアドバンテージ 遠藤 孝信2005/10/07 |
![]() |
|
|
|
Visual Studio .NETのデバッガでは、「ステップイン実行」や「ステップオーバー実行」によりコードを1行ずつステップ実行しながらプログラムの挙動を確認していくことができる。ステップイン実行(キーボードからは[F11]キーにより行える)はメソッドの内部に入ってプログラムをステップ実行するのに対して、ステップオーバー実行([F10]キーにより行える)はメソッド内部まではステップ実行しない。
前者のステップイン実行では、メソッド内部も含めて確実にすべてのステップを実行できるので便利なのだが、明らかにバグがないと思われるメソッドや、すでにデバッグ済みのメソッドについては、そのメソッド内部のステップ実行をスキップしたい場合がある。そのようなメソッドについてはDebuggerStepThrough属性(System.Diagnostics名前空間)を指定すればよい。
例えば次のコードでは、MyClassクラスのコンストラクタにこの属性を指定している。このコードを先頭からステップイン実行した場合、コードのステップは
、
、
となる(DebuggerStepThrough属性がない場合は
、
、
、
)。
|
||
| DebuggerStepThrough属性の記述例(上:C#、下:VB.NET) |
なお、DebuggerStepThrough属性の付いたメソッド内でもブレイクポイントは設定可能で、デバッグ時にはそのポイントで実行が中止する。また、この属性はクラスに対しても指定可能であり、この場合には静的メソッドを除いたすべてのメソッドでのステップ実行がスキップされる。![]()
| カテゴリ:クラス・ライブラリ 処理対象:デバッグ&トレース 使用ライブラリ:DebuggerStepThrough属性(System.Diagnostics名前空間) |
|
||||||||||||
| 「.NET TIPS」 |
TechTargetジャパン
Insider.NET フォーラム 新着記事
- 新人プログラマーのためのInsider.NETの歩き方 2012 (2012/5/22)
晴れて.NETプログラマーとなる新人が効率的に開発技術を習得するには? 大量にある記事群の中から新人が読むべきお勧めを厳選して紹介 - jQuery MobileでJavaScriptプログラミング (2012/5/17)
jQuery Mobileは手軽なだけでなく、JavaScriptのAPIも充実しており、独自機能の実装もできる。今回は「グローバル設定」と「イベント」を解説 - Windows上で開発するための開発環境構築入門 (2012/5/16)
Windowsを使ってチームで開発している? なのにサーバOSを設定・運用した経験がない? そうなら、今すぐ学ぼう - 「コントラクト」でアプリのサンドボックスを乗り越える! (2012/5/11)
Metroスタイル・アプリはサンドボックスの中で動作する。それを乗り越えてほかのアプリと連携する仕組み「コントラクト」を解説
|
|
@IT 新着記事
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -
お勧め求人情報
転職/派遣情報を探す
**先週の人気講座ランキング**
〜 Android編 〜
ホワイトペーパー(TechTargetジャパン)
ソリューションFLASH


