0

MySQL DataReader 値/オブジェクトを渡したい C# の次の関数があります。

渡されたオブジェクトの値が DBNull の場合、それを処理してそのデータ型の Null 値 (null int など) を返す必要があります。

それ以外の場合は、Convert.ToInt32(value) などの戻り値を変換したいと考えています。私の機能は次のとおりです。

public static T ConvertFromDB<T>(object value)
{
     return value == DBNull.Value ? default(T) : (T)value;
}

次のように関数を呼び出すことができます

int MyInt = ConvertFromDB(oRes["FieldName"]);

ただし、この場合、oRes["FieldName"] の MySQLDataReader の結果は DBNull であり、例外が発生します。

誰でもこれについて何か助けを提供できますか? 厳密に型指定された列を使用していますが、DB 値が DBNull の場合、(int)null などのそのデータ型の null を返す必要があるという問題があります。

4

1 に答える 1