マスター ページを使用する asp.net に Web サイトがあります。このマスター ページには、コンテンツ ページのすべてのコンテンツを含む 1 つのビューと、すべてのコンテンツ ページからのエラー メッセージを表示するマスター ページへのローカル コンテンツを含む 1 つのビューを含むマルチビュー コントロールがあります。
このエラー ビューには、エラー メッセージを表示する asp.net ラベル コントロールがあります。通常、ラベルは正常に機能しますが、ラベルが null である場合がいくつかあり、NullReferenceException がレンダリングされます。使用する前にラベルが null かどうかを確認することでこのケースを処理しましたが、それでも私の質問は次のとおりです。
このラベルが null なのはなぜですか? これを生成できる状況は何ですか?
編集:マスター ページには、文字列を取得してラベルを設定する SetErrorText というメソッドがあります。コンテンツ ページの Page_Load メソッドからこのメソッドを呼び出していますが、これは通常は正常に機能します。(これまでに発見した) 2 つのケースを除くすべてで、ラベルは初期化されており、これら 2 つのケースと機能するすべてのケースを区別するものは何もありません。
また、ラベルを格納するビュー コントロールなど、マスター ページ内の他のすべてのコントロールが初期化されます。
コンテンツ ページの Page_Load がロールアラウンドすると、マスター ページが読み込まれます。