あなたはASP.NET MVCアプリケーションを開発しています。本出願は以下の方法を含む。行番号は参照用としてのみ含まれています。

アプリケーションは各ページを表示する前にGenerateMessageメソッドを呼び出します。
GenerateMessageメソッドは、NullReferenceException例外をスローします。
例外を防ぐためにコード契約を使用する必要があります。
03行目にどのコードセグメントを挿入すればよいですか。
正解:B
説明/参照:
Explanation:
Contract.Requires(obj!= null)のような構文を使用する "Microsoft Code Contracts"があります。これはランタイムとコンパイルのチェックを可能にします。 Contract.Requiresは、囲むメソッドまたはプロパティの前提条件契約を指定します。
間違った答え:
A:Contract.Assumeは、コード分析ツールに、指定された条件が常に正しいことを静的に証明できない場合でも、その条件が正しいと見なすように指示します。
C:Contract.Ensuresは、囲むメソッドまたはプロパティの事後条件契約を指定します。
D:Contract.Invariantは、それを囲むメソッドまたはプロパティに対して不変の契約を指定し、契約の条件が満たされない場合はメッセージを表示します。
参照先:https://msdn.microsoft.com/ja-jp/library/system.diagnostics.contracts.contract(v = vs.110).aspx