文字列にフォーマットしたいだけならありかもですが、本来返したいのは string ではなく DateTime? のようです。 データベースでは日付型列にnullを取ることができますが、C#のDateTimeは値型のためnull値を取れません。そのためNullableについての知識が無いと、こういうコードが出来上がるのでしょう。 同じようなことが int や double でもありえますが、こちらは多くの場合「nullならば0」とすれば問題ないので、DateTimeほど醜くはならないようです。
class DbTool
{
/// <summary>
/// 日付データをYYYY/MM/DDで返す
/// </summary>
public static string ConvertDate(object value)
{
if (value == null || value == DBNull.Value)
{
return "";
}
else if (value is DateTime)
{
return ((DateTime)value).ToString("yyyy/MM/dd");
}
else
{
return "";
}
}
}
まだコメントがありません。最初にコメントを残しませんか?