在MVC视图中显示yes或no而不是1或0

时间:2012-11-30 16:19:55

标签: asp.net-mvc-3

有没有办法可以为我的视图字段添加注释,以便在我的视图中显示yes而不是one而不是0?我知道有一个显示属性采用名称并显示不同的东西,但这不是我想要的。

2 个答案:

答案 0 :(得分:4)

创建名为“YesNo”

Display Template
@model int

@(Model == 0 ? "No" : "Yes")

将属性添加到模型的字段

[UIHint("YesNo")]
public int Value { get; set; }

当您显示模型时,将使用"YesNo"显示模板。

@Html.DisplayFor(model => model.Value) // output "Yes" or "No"

答案 1 :(得分:1)

您有几个选择。最简单的是在视图中添加一些“显示逻辑”。

@(Model.YesNo == 1 ? "Yes" : "No")

我会创建一个Enum类型并在模型中使用它而不是int。

public enum YesNo
{
  No = 0,
  Yes, 1
}

然后你的视图就会有

@Html.DisplayFor(model => model.YesNo)