[size=medium]
/// <summary>
/// 将空("")或null值的字符串转换为空字段
/// </summary>
/// <param name="obj">传入的参数</param>
public static object GetSqlNull(object obj)
{
if (string.IsNullOrEmpty(obj.ToString()))
{
return DBNull.Value;
}
else
{
return obj;
}
}
/// <summary>
/// 将值类型(整型、浮点型、Decimal型、boo型、可空类型(Nullable<T>泛型结构体))转换为空字段
/// </summary>
/// <param name="obj">传入的参数</param>
public static object GetSqlNull(object obj)
{
return obj == null ? (object)DBNull.Value : obj;
}
System.Nullable<T> 的简单理解
其中一种用途:数据库中的int类型可以为空 在C# 中的处理为int?
限制:T必须为值类型,为引用类型没有意义
范围:可空类型可以表示其基础值类型正常范围内的值,再加上一个 null 值。
基本属性:Nullable<T> 结构的两个基础成员为 HasValue和 Value属性。如果 Nullable<T>) 对象的 HasValue属性为 true,则可以使用 Value属性访问该对象的值。如果 HasValue属性为 false,则表示尚未定义该对象的值,并且尝试访问 Value属性时会引发异常
[/size]