ASP.NET MVC空计算字段

时间:2019-05-25 20:47:59

标签: c# asp.net-mvc

我在Vendor.cs中具有以下计算字段:

public string FullAddress
    {
        get
        { 
            return VendorAddNum + " " + TLRoadDirection.Direction + " " + VendorAddName + " " + TLRoadType.RdType + " " + TLUnitTypeOne.UnitType + " " + VendorAddUnitOne + " " + TLUnitTypeTwo.UnitType + " " + VendorAddUnitTwo;
        }
    }

这是该字段视图中的标记:

@Html.DisplayNameFor(model => model.FullAddress)

当我的供应商之一没有任何地址信息时,FullAddress为null,这使我得到了null引用异常。如何允许FullAddress为空?

1 个答案:

答案 0 :(得分:1)

使用字符串插值法更好地处理null个值,而不是串联所有值:

return $"{VendorAddNum} {TLRoadDirection.Direction} {VendorAddName} {TLRoadType.RdType} {TLUnitTypeOne.UnitType} {VendorAddUnitOne} {TLUnitTypeTwo.UnitType} {VendorAddUnitTwo}";

作为一个额外的好处,性能要好一些,代码也要干净一些。


如果您使用的是C#的旧版本,则可以类似地使用string.Format

return string.Format("{0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}", VendorAddNum, TLRoadDirection.Direction, VendorAddName, TLRoadType.RdType, TLUnitTypeOne.UnitType, VendorAddUnitOne, TLUnitTypeTwo.UnitType, VendorAddUnitTwo);