在这种情况下如何使Html.DisplayFor工作?

时间:2013-04-02 04:17:19

标签: c# asp.net-mvc entity-framework

我有这堂课:

  public class UserMessage
{
    public int UserMessageId { get; set; }

    [Required]
    [StringLength(50)]
    public string Name { get; set; }

    [Required]
    [EmailAddress]
    public string Email { get; set; }


    [Required]
    public string MessageType { get; set; }

    [Required]
    [StringLength(300)]
    [DataType(DataType.MultilineText)]
    public string Message { get; set; }


}

我认为:

@model IEnumerable<Kekanto.Models.UserMessage>

@foreach (var message in Model)
{ 
@Html.DisplayFor(message)

}

我想在视图中显示数据....我不知道在这种情况下如何做... 我知道我可以制作@ Html.DisplayFor(message =&gt; message.Message)并为所有字段编写显示...但我想知道我是否能用一个单一的命令制作

3 个答案:

答案 0 :(得分:1)

而不是使用DisplayFor,您可以使用Display

@foreach (var message in Model)
{ 
    Html.Display(message)

}

但如果您只是显示数据,我会使用除显示之外的其他东西Html.Raw()

答案 1 :(得分:1)

@{
   string str = "";
   foreach (var message in Model)
         { 
           str = str + message ;    
         } 
}
@Html.Raw(str)

答案 2 :(得分:0)

有些.net?

@string.Join(", ", Model.Select(T => T.Message))