哪个是更好的返回null或空对象

本文关键字:null 对象 返回 更好 | 更新日期: 2023-09-27 18:02:59

哪个是更好的返回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。空,我不知道返回什么来表示'no data'。

任何建议吗?

Thanks in advance

哪个是更好的返回null或空对象

这取决于:

  • 当我在一个对象的属性上返回string.Empty时,这意味着实体确实存在,但该对象没有属性或属性实际上是一个没有字符的字符串。

  • 当我返回null而不是string.Empty时,这意味着条目/实体不存在,换句话说,没有数据