priavate void getfoo( ){
OracleDataReader myDataReader;
OracleRefCursor myCursor = (OracleRefCursor)cmd.Parameters["omyDATA"].Value;
myDataReader = myCursor.GetDataReader();
fillmytable(myDataReader);
}
private void fillmytable(OracleDataReader mydataReader) {
StringBuilder myStringBuilder = new StringBuilder();
if( mydataReader.GetOracleValue(n) == "null")
{
mystringbuilder.Append("");
}
else
{
mystringbuilder.Append(mydataReader.GetOracleValue(n).ToString();
}
出力: _
しかし、好きなように使いたい場合はString.IsNullOrEmpty
、
if(String.IsNullorEmpty(mydataReader.GetOracleValue(n).ToString())
{
mystringbuilder.Append("");
}
else
{
mystringbuilder.Append(mydataReader.GetOracleValue(n).ToString();
}
出力: null
問題は「null」文字列テストが機能することですが、IsNullorEmpty は機能しません。GetOracleValue が null であるかどうかをテストし、それを空のスペースに置き換える必要があります。