View中的ASP.NET MVC IF条件

时间:2010-07-01 19:05:32

标签: asp.net-mvc-2

我在conrtoller中有一个action result方法,它将IList返回给我的视图。现在,Ilist从数据库返回一组行。其中的一些列是位值。现在 当我显示这些行时,位值显示为true和false。如果值为true,我需要检查IF条件然后显示Yes,否则显示no。我收到错误说编译错误消息: CS0103:当前上下文中不存在名称'True'

<% if(Model.Count < 1)
           {%>
                   No User's Add Under You!
        <% } else {
            foreach (var item in Model) { %> 
           <tr>
           <td class="usertd"><%= Html.Encode(item.UserName) %> </td>
           <td class="usertd"><%= Html.Encode(item.Role) %></td>
           <td class="usertd"><%= Html.Encode(item.Email)%> </td>
           <td><% if (item.EmailDoc.Equals(True)) { %>
               Yes <% } else { %>
               No  <% } %>
           </td>
           <td class="usertd"><%= Html.Encode(item.EmailDoc)%></td>
           <td class="usertd"><%= Html.Encode(item.PrintDoc)%></td>
           <td class="usertd"><%= Html.Encode(item.DownloadDoc)%></td>
           <td class="usertd"><input type="button" value="Edit User"/></td>
           </tr>
            <% }
        } %>

1 个答案:

答案 0 :(得分:2)

C#实际上是case sensitive

<% if (item.EmailDoc.Equals(true)) { %>

当然可以简化为:

<% if (item.EmailDoc) { %>

但是如果你的item.EmailDoc属性是string,你需要进行字符串比较(在这种情况下,无论如何都不能成为字符串):

<% if (item.EmailDoc == "True")) { %>