ASP.NET MVC:删除详细信息视图中的空字段

时间:2011-03-30 19:35:59

标签: c# asp.net-mvc-2

假设我有以下内容:

动作:

public ActionResult Details(int id)
{
    Person person = personRepository.GetPerson(id);

    return View(person)
}

这是我的观点:

    Name: <%= Html.Encode(Model.Name) %><br />
    Age: <%= Html.Encode(Model.Age) %><br />
    Birth Date: <%= Html.Encode(Model.Birthday) %><br />
    Country: <%= Html.Encode(Model.Country) %><br />
    Weight: <%= Html.Encode(Model.Weight) %><br />
    Height: <%= Html.Encode(Model.Height) %><br />
    Phone: <%= Html.Encode(Model.PhoneNumber) %>

我的问题是国家,体重和身高都可以为空。我怎么能做这样的事呢

foreach (var field in Model)
        if (var field != null)
        {
             field.name + ": " + field.value
        }

我可以这样做,但我确信有更好的方法:

  if (Model.Name != null){
            <%= Html.Encode(Model.Name)%>
       } 

提前谢谢

1 个答案:

答案 0 :(得分:2)

 Country:<%: string.IsNullOrEmpty(Model.Country) ? String.Empty : Model.Country  %>                
<br />

请注意 In&lt;%:%&gt; MVC 2你可以将它用于Html.Encode