Как получить заголовки столбцов из Display (Name =) DataAnnotation для строго типизированного списка представление каркаса во время выполнения?

Как мне получить [Display (Name = "Some Title")] DataAnnotations "Some Title", отображаемый в Просмотр каркаса списка ' s output?

Я создаю строго типизированное представление шаблона списка для этого класса:

public class CompanyHoliday
{
    [Key]
    public int Id { get; set; }

    [Required]
    [Display(Name = "Datum")]
    [DataType(System.ComponentModel.DataAnnotations.DataType.Date)]
    public DateTime Date { get; set; }

    [Required]
    [StringLength(50)]
    [Display(Name = "Feiertag Name")]
    public string Name { get; set; }
}

Представление выглядит следующим образом:

@model IEnumerable<Zeiterfassung.Domain.CompanyHoliday>

@{
    ViewBag.Title = "Year";
}

<h2>Year</h2>

<p>
    @Html.ActionLink("Create New", "Create")
</p>
<table>
<tr>
    <th></th>
    <th>
        Date
    </th>
    <th>
        Name
    </th>
</tr>

@foreach (var item in Model) {
<tr>
    <td>
        @Html.ActionLink("Edit", "Edit", new { id=item.Id }) |
        @Html.ActionLink("Details", "Details", new { id=item.Id }) |
        @Html.ActionLink("Delete", "Delete", new { id=item.Id })
    </td>
    <td>
        @String.Format("{0:g}", item.Date)
    </td>
    <td>
        @item.Name
    </td>
</tr>
}

</table>

Однако мне не нужны «Дата» и «Имя» в заголовке таблицы. Я хочу, чтобы "Datum" и "Feiertag Name" отображались там динамически.

Фактические заголовки столбцов должны поступать из Display DataAnnotation.

Как мне это сделать?

17
задан ataravati 25 August 2015 в 21:51
поделиться