哪个更好返回null或空对象?
var entity = GetFromDB();
if (entity != null)
{
var price = entity.Price != null
? PriceDecorator.Decorate(entity.Price)
: null;
}
public class PriceDecorator
{
public static string Decorate(decimal? price)
{
if (price == null || price == 0)
return String.Empty;
return String.Format(CultureInfo.CurrentCulture , "{0:C}", price);
}
}
在上面的代码中,有时我返回null,有时我返回Sting.Empty,我不知道返回什么表示“没有数据”。
有什么建议吗?
提前致谢
答案 0 :(得分:4)
取决于:
当我在对象的属性上返回string.Empty
时,表示实体确实存在,但该对象没有属性或属性在事实上一个没有字符的字符串。
当我返回null
而不是string.Empty
时,表示条目/实体不存在,换句话说,有否数据