2010-12-30 24 views
0

次のモデルがあります。出席とFoodPreferenceはenumです。DisplayFor()を呼び出すときに表示名が表示されない

public class RsvpModel { 

     public RsvpPerson[] People { get; set; } 
    } 

public class RsvpPerson { 

    [Required(ErrorMessage = "Required")] 
    [DisplayName("First Name")] 
    public string FirstName { get; set; } 

    [Required(ErrorMessage = "Required")] 
    [DisplayName("Last Name")] 
    public string LastName { get; set; } 

    public string Email { get; set; } 

    [Required(ErrorMessage = "Required")] 
    [DisplayName("Are you attending?")] 
    public Attendances? IsAttending { get; set; } 

    [Required(ErrorMessage = "Required")] 
    [DisplayName("Food Preference")] 
    public FoodPreference? Food { get; set; } 
} 

モデルが私の見解

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<Models.RsvpModel>" %> 

に渡されているが、これは何も表示されませんし、私は理由を知りません。

<%= Html.DisplayFor(m => m.People[0].FirstName)%> 
+0

LabelForはDisplayNameAttributeに注釈を付け、プロパティ名をレンダリングしています。 DisplayForはレンダリング表示テンプレートで、UIHintAttributeを継承します。 – takepara

答えて

2

私はあなたがinviduallyラベルを追加する必要がありますと思う:

<%= Html.LabelFor(m => m.People[0].FirstName) %> 
<%= Html.DisplayFor(m => m.People[0].FirstName) %> 
関連する問題