@ Html.DisplayText realmente no mostrará texto

La siguiente es la primera sección en la primera fila de una tabla en una de mis páginas de índice de ASP MVC3. He revisado el código cuando se carga esa página y puedo ver que la evaluación de las condiciones se realiza correctamente, sin embargo, no aparece en las pantallas "CE" o "PT". Soy bastante nuevo en ASP MVC, ¿puede alguien ayudarme con la sintaxis / explicar qué está pasando?

@foreach (var item in Model.Where(i => i.Status != "C")) {
var Id = item.Id;
<tr>
    <td>
    @if (!String.IsNullOrWhiteSpace(item.TableName))
    {
        if (item.TableName.Equals("AgentContEd"))
        {
            @Html.DisplayText("CE");
        }
        else if (item.TableName.Equals("AgentProductTraining"))
        {
            @Html.DisplayText("PT");
        }
        else
        {
            @Html.DisplayFor(modelItem => item.TableName)
        }             
    }           
    </td>

Respuestas a la pregunta(4)

Su respuesta a la pregunta