2013-04-22 90 views
2

這是我的看法:覆蓋自動生成的ID在MVC4

@using (Html.BeginForm()) 
{ 
    @Html.ValidationSummary()    
    @Html.EditorForModel() 

    <input type="submit" value="@Resources.Main.Save" />   
} 

這是我的視圖模型

public class ContentPagePresViewModel 
    { 
     [HiddenInput(DisplayValue = false)] 
     public Guid Id { get; set; } 


     /// <summary> 
     /// Contenu de la page 
     /// </summary> 
     [Display(Name = "¨Presentation")] 
     [DataType(DataType.Html)] 
     [AllowHtml] 
     /*[Required(ErrorMessage = "ContentPage_PageContent_Required")]*/ 

     public virtual string Description { get; set; } 
} 

我想,對我的描述歡迎使用屬性生成的ID不就成了「說明」 。 我該怎麼做?

回答

1

您可以使用UIHint屬性和自定義編輯器模板結合使用。

修改模型添加UIHint屬性:

[UIHint("Description")] 
public virtual string Description { get; set; } 

在您的特定視圖的文件夾中,創建一個名爲的新文件夾。添加一個名爲Description.cshtml新文件,並添加以下內容:(假設你使用剃刀)

<div> 
    @Html.TextBox("", Model, new { id = "_myCustomDescriptionId" }) 
</div> 


這裏的另一個想法考慮。可能更直接地單獨佈置您的字段和編輯器,而不是使用 Html.EditorForModel。在這種情況下,您可以直接指定html屬性,如下所示:

@Html.TextBoxFor(m => m.Description, new { id = "_myCustomDescriptionId" });