本文介绍了检查的ToString前空()的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
下面的情景......
Here's the scenario...
if (entry.Properties["something"].Value != null) attribs.something = entry.Properties["something"].Value.ToString();
虽然有效,工作正常,这看起来丑陋的我。如果我执行的ToString前没有检查空(),那么它抛出,如果属性为null异常。有没有更好的方式来处理这种情况?
While effective and working correctly, this looks ugly to me. If I don't check for a null before performing the ToString() then it throws an exception if the property was null. Is there a better way to handle this scenario?
许多AP preciated!
Much appreciated!
推荐答案(编辑以实际工作:))
(edited to actually work :) )
object defaultValue = "default"; attribs.something = (entry.Properties["something"].Value ?? defaultValue).ToString()
编辑:我也采取了利用这一点,这是不是非常聪明,但方便的:
I've also taken to using this, which isn't terribly clever but convenient:
public static string ToSafeString(this object obj) { return (obj ?? string.Empty).ToString(); }更多推荐
检查的ToString前空()
发布评论