有没有一种很好的方法来控制显示模板应该如何呈现空字段?

时间:2013-10-03 16:39:29

标签: asp.net-mvc asp.net-mvc-4 razor

有没有办法控制内置显示模板(如十进制,字符串)应如何呈现空字段/空字符串?我希望将“ - ”显示为某些字段的值,而将其他字符显示为空行。

我知道我可以在视图中检查这些字段是否为空,但这在数百个地方看起来不是一件好事。

2 个答案:

答案 0 :(得分:7)

NullDisplayText属性的DisplayFormat属性应用于相关的视图模型成员。

[DisplayFormat(ConvertEmptyStringToNull = true, NullDisplayText = "-")]   
public string Name { get; set; }

请注意,DisplayFormat属性旨在与模板化帮助程序一起使用,例如EditorForDisplayFor(听起来就是这样)。

答案 1 :(得分:3)

您可以创建自己的显示模板并从那里控制行为。

@model string

@if(Model == null){
    // your behavior here.
}
else {

}