我有一个叫做Lines的模型。在这我有一个包含若干个字符串的地址类,即:Concantenate一个字符串DisplayFor
public string ReferenceKey { get; set; }
public string Country { get; set; }
public string County { get; set; }
public string Postcode { get; set; }
public string PremisesName { get; set; }
public string PremisesName { get; set; }
我从一个Web服务调用信息反馈到外线,然后填充返回的数据,这些领域 - 注:在某些情况下,他们可能不会返回任何内容,例如County或PostTown可能会返回空。
目前在我的CSHTML页我显示如下地址:
@Html.DisplayFor(model => model.Address.ReferenceKey),
@Html.DisplayFor(model => model.Address.PremisesName),
@Html.DisplayFor(model => model.Address.PostTown),
@Html.DisplayFor(model => model.Address.Postcode),
@Html.DisplayFor(model => model.Address.County),
@Html.DisplayFor(model => model.Address.Country)
然而,当返回所有数据如果某些字段为空,将显示如它工作正常 - REF1 ,,,邮编,县,国家 - 即它没有价值的字段不会被打印,但逗号将看起来不太好。我的想法是像下面一样向我的模型中添加另一个字符串。
public string ConcatAddress { get; set; }
现在是我有点卡住了 - 在我的控制器我在做下面建立字符串:
model.ConcatAddress = model.Address.ReferenceKey + model.Address.PremisesName....etc, etc
我会做一个更换双逗号,等等取决于价值。一个string.IsNullorEmpty之前每个值检查可能,但在替换?
任何人都可以进一步帮助或建议更好的解决方案吗?
太好了 - 我喜欢这种方法,因为我有一个独立的地址助手类,所以我会在这里添加一个方法来完成上述操作。足够的时间过后,我会接受这个答案。 – 2012-08-07 10:53:25