Мне нужно было создать что-то похожее, чтобы отображались «Sim» и «Não» (португальский Да / Нет). Я создал следующий файл:
Views\Shared\DisplayTemplates\Boolean.ascx
И добавил следующий код:
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<dynamic>" %>
<%= (bool) ViewData.Model ? "Sim" : "Não" %>
Надеюсь, это поможет!
EDIT
Забыл, на ваш взгляд, просто назвать это так:
<%= Html.DisplayFor(i => item.Ativo) %>
РЕДАКТИРОВАТЬ 2
Для обнуляемого (bool?) Попробуйте это:
<%= (ViewData.Model == null) ? "NA" : (ViewData.Model == true) ? "Y" : "N"%>
РЕДАКТИРОВАТЬ 3
Использование синтаксиса Razor (Views \ Shared \ DisplayTemplates \ Boolean.cshtml):
@{ Layout = null; }
@(ViewData.Model ? "Sim" : "Não")