私はDebug.Assert()のバージョンが必要です。リリースビルドでは引き続きconditionパラメータでコードを実行しますが、アサーションに失敗した場合はアサーションダイアログを表示しません。 .NET 3.5にこのようなツールがありますか?これを自分で実装する必要がありますか?リリース時に状態をチェックするDebug.Assert()のバージョンはありますか?
答えて
Trace.Assertを使用すると、リリースモードでも動作します。リスナを使用してダイアログを表示する方法以外の方法を使用する方法については、ドキュメントを参照してください。抜粋:
メッセージボックスの表示は、DefaultTraceListenerの存在によって異なります。 DefaultTraceListenerがListenersコレクションにない場合、メッセージボックスは表示されません。 DefaultTraceListenerは、または(System.Diagnostics.TraceリスナーのプロパティのClearメソッドを呼び出すことにより、<トレース>、<は<トレース>ため<リスナー>ため>要素を取り除くため<リスナー>ため<明らか>要素によって除去することができます.Listeners.Clear())。ですから、例えば
:
#if (!DEBUG)
System.Diagnostics.Trace.Listeners.Clear();
#endif
なぜ単純にコードを実行し、Debug.Assertので結果を確認しますか?
bool isOk = CodeToBeExecuted();
Debug.Assert(isOk == true);
これで、Debug.AssertをTrace.Assertで簡単に検索して置き換えるのではなく、彼が主張をすべて書き直す必要があります。また、アサーションはもはや何が間違っているのかを彼に伝えません。彼らはすべて「isOKが失敗しました」だけです。 –
それだけでなく、リリースでは未参照の変数を持つことになります(コンパイラの警告が出るかどうかはわかりませんが、C++ではわかります)。 –
- 1. ASP.NETでDebug.Assertを使用する価値はありますか?
- 2. スリープ状態にあるQThreadをスリープ状態にしますか?
- 3. 状態変更時にスイッチボタン(AlertDialogにあります)を何かします
- 4. どのように電子状態で電子状態をチェックしますか?
- 5. オブジェクトが空の状態にあるかどうかをチェックする方法は?
- 6. ダブルクリック時のUITableViewセルは前の状態に戻る必要があります
- 7. 状態の保存に時間がかかり過ぎると、実際の終了状態を検出する方法はありますか?
- 8. ユニックス状態チェック!
- 9. ミュート状態を確認する方法はありますか?
- 10. 遅延フォーカス状態になるボイスオーバーAPIはありますか?
- 11. Javaプロジェクトの競合状態を自動的にチェックする静的解析ツールはありますか?
- 12. ALMタスクの状態に応じてDOORS要件の状態を設定する方法はありますか?
- 13. シングルトンをプログラム状態にする必要がありますか?
- 14. Androidイメージボタンには3つの状態がありますか?
- 15. Logstashフィルタには独自の状態がありますか?
- 16. Unity3DにはiOSとAndroidのアプリ状態がありますか?
- 17. コードからDebug.Assert()の後に続ける方法はありますか?
- 18. アプリケーションの起動時にsql接続の状態をチェックする方法は?
- 19. ボタンの状態をチェックする - チェックボックス
- 20. フォーム提出時のチェックボックスのチェック状態とページロード状態の比較
- 21. チェックボックスをクリックすると、一時アドレスに状態フィールドを有効にする方法はありますか?
- 22. jspのtogglzのアクティブ状態と非アクティブ状態をチェックする方法は?
- 23. 現在の状態の状態グループまたは実際の状態オブジェクトを簡単に取得する方法はありますか?
- 24. コンポーネント状態に追加された新しい状態キーを理解するライフサイクルメソッドはありますか?
- 25. 各JBossリリースのJAR依存関係のバージョンはどこにありますか?
- 26. ブートストラップスイッチのチェック状態は常に真を返します
- 27. AndroidでTorchのライトステータスにアクセスする方法はありますか?フラッシュライトがプログラム状態でオン状態かオフ状態かを確認したい
- 28. ファイルのハッシュ中に状態を監視する方法はありますか?
- 29. プライベートフィールドへのアクセスを休止状態にする方法はありますか?
- 30. チェックボックスの状態を変数でチェックします。チェックボックス(i)。チェック?
ありがとうございました。彼らが言及しているXMLは正確に何ですか?それはVisual Studio ProjectのXMLですか?何らかの形で、アプリケーションは、DefaultTraceListenerをいつデバッグ用に登録するのか、リリース用ではないのかを知る必要があります。 –
XMLはあなたのapp.configファイルにあります。トレースオプションとデバッグオプションを定義することができます。ただし、リリースモードでクリアを定義するだけで済みます。私はそれを示すために私の答えを編集します。 –