2017-10-19 10 views
1

私は次のコードを持って:あなたはクイックビューツールチップからわかるように、nNewCell.Styleは何もDebug.Assertの()はスローされません

enter image description here

ではありませんが。 それにもかかわらず、ライン

Debug.Assert(nNewCell.Style IsNot Nothing) 
Debug.Assert(nNewCell.Style.GUID <> "") 

がスローされていません。

IDEが例外を発生させたり停止したりすることはありません。IDEは単にこれらの行を無視します。

私のプロジェクト設定は、x86のデバッグです。

この問題の原因は何ですか?

答えて

1

プロジェクトのプロパティ➤コンパイル➤高度なコンパイルオプション

あなたはDefine DEBUG constantのチェックボックスが表示されます。これは、Debug機能が機能するためにチェックされなければなりません。そうでない場合、無視され、アセンブリにコンパイルされません。

あなたのコードが原因行Debug.Assert(nNewCell.Style.GUID <> "")、それはNothingた表示あなたのスクリーンショットにとNullReferenceExceptionを投げしなければならないので、あなたはDEBUG定数が欠けているようにこれは間違いなくそうです。


ワンクイックノート。この問題は本当に簡単に発生し、私はこれに関連する問題を追跡する前にかなりの時間を失いました。新しい設定を作成するときは、常に適切なタイプ(DebugまたはRelease)をコピーしてください。このような問題は、通常、リリースまたは非デバッグ設定をコピーしてからデバッグとして処理しようとすることによって発生します。

+0

ありがとうございます。私の設定はVSの更新時に失われたようです。 – tmighty

関連する問題