【发布时间】:2010-10-21 13:34:55
【问题描述】:
如何编写一个扩展方法来检查对象的值,如果对象为空,那么 它应该返回 null 否则值{而不在接收端进行强制转换}。
类似...
public static object GetDefault(this object obj)
{
if (obj == null) return null;
else return obj;
}
我的意思是如果没有强制转换,我可以检查 null 吗?
int? a=a.GetDefault();
ContactType type=type.GetDefault(); [For EnumType]
string s=a.GetDefault()
【问题讨论】:
-
这个要求似乎毫无意义。只需将对象直接分配给可为空的类型即可。
-
如果为null,则返回null,否则返回值...这与立即使用该值有何不同?
-
@GSerg 问题中的代码只是一个原型,缺少重要的一点。 :)(我希望)
标签: c# extension-methods