仅在模型中显示非空记录

时间:2015-08-11 09:46:18

标签: html asp.net asp.net-mvc-4 razor code-first

这是控制器中的方法:

public ActionResult Details(int id = 0)
{
    //CourseCategory courseCategory = db.CourseCategories.Find(id);
    CourseCategory courseCategory = db.CourseCategories.Include(s => s.Files).SingleOrDefault(s => s.ID == id);
    if (courseCategory == null)
    {
        return HttpNotFound();
    }

    return View(courseCategory);
}

这是观点:

<tr>
    <td style="color: #3399FF; font-weight: bold;">
        <div class="display-label">
            @Html.DisplayNameFor(model => model.courseField)
        </div>
    </td>

    <td>
        <div class="display-field">
            @Html.DisplayFor(model => model.courseField)
        </div>
    </td>

                                    @ Html.DisplayNameFor(model =&gt; model.courseSubject)                     

   <td>
        <div class="display-field">
           @Html.DisplayFor(model => model.courseSubject)
        </div>
   </td>

这是我将模型数据检索到表格中的方法。如果记录为空,我想隐藏标签及其包含的tr标签。我不想显示空记录。我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

尝试这种方式:

@if(model.courseField!="" && model.courseField!=null)
{
  <tr>
      <td style="color: #3399FF; font-weight: bold;">
          <div class="display-label">
           @Html.DisplayNameFor(model => model.courseField)
          </div>
      </td>

      <td>
          <div class="display-field">
           @Html.DisplayFor(model => model.courseField)
          </div>
     </td>
  </tr>
}

同样适用于courseSubject !!如果model attribute

中存在值,则只需附加它