次のステートメントの最初のステートメントでコンパイル エラーがスローされ、2 番目のステートメントではスローされない理由を教えてください。
NewDatabase.AddInParameter(NewCommand, "@SomeString", DbType.String, SomeString ?? DBNull.Value); // <-- Throws compilation error!
NewDatabase.AddInParameter(NewCommand, "@SomeString", DbType.String, (object)(SomeString) ?? DBNull.Value); // <-- Compiles!
などの他のnull許容型を試してみbyte?
ましたが、同じ結果が得られました。最初にオブジェクトにキャストする必要がある理由を教えてください。