我有这种扩展方法:
public static SqlParameter SqlParam(this object value, string parameterName)
{
SqlParameter param = new SqlParameter(parameterName, value == null ? (object)DBNull.Value : value);
return param;
}
通过查看其他一些示例,我也注意到了,另一个选择是将方法声明为:
public static SqlParameter SqlParam<T>(this T value, string parameterName)
用法是一样的:
myValue.SqlParam("@myParam")
因为我是C#/泛型的新手,现在我想知道哪个是更好的方法,除了明显的(通用/对象)之外,两者在概念方面有什么区别。我应该选择哪一个以及为什么这两种方法的优点/缺点是这种情况?