System.InvalidOperationException

どんなエラー?

いろんなパターンがあるが、よく見かけるのがインスタンスが初期状態で生成されたまま、.First をしてしまうケース。

対応方法

セーフ処理として、カウントを取ってIfで比較後処理を流すというロジックをよく見かけるけど、そもそも .First または (0) を求めている時点で、固定値の取得なわけで、そこまで至っている状態がそもそもおかしい。そもそも自動テストのレベルで気付く(※1)はずだ。

※1 メソッドが100行超えているとか、変数の宣言部があるような化石プログラムの場合はあきらめるほかない。

.Fristや(0)はよくない、という人がいますが、よくないのは設計であってコードではない。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です