DisplayNameFor标签改变我的详细信息视图的文字

问题描述:

我有下面的代码实体ADisplayNameFor标签改变我的详细信息视图的文字

<dt> 
    @Html.DisplayNameFor(model => model.User1.UserName) 
</dt> 
<dd> 
    @Html.DisplayFor(model => model.User1.UserName) 
</dd> 

我想改变自己的标题,在详细信息视图显示 它显示用户名,我想这要由提交 它不能因为DisplayName的超载对于DONOT有两个参数 @Html.DisplayFor(model => model.User1.UserName,"Submitted By")不工作 任何帮助

这里是我的错误的模型,其中我有域的分配并通过提交相关的用户模型中的任何重载函数所以我有说,“用户名”被列名的地方,它应该显示的名称为“分配到”和“提交者”

public partial class Bug 
{ 
    public int ID { get; set; } 
    public string Name { get; set; } 
    public string Description { get; set; } 
    public string Priority { get; set; } 
    public string Severity { get; set; } 
    public string Status { get; set; } 
    public int AssignedTo { get; set; } 
    public int SubmittedBy { get; set; } 
    public int ComponentID { get; set; } 
    public int ProjectID { get; set; } 
    public System.DateTime DueDate { get; set; } 
    public Nullable<int> BugNumber { get; set; } 
    public string NormalFlow { get; set; } 
    public System.DateTime CreationDate { get; set; } 

    public virtual Component Component { get; set; } 
    public virtual Project Project { get; set; } 
    public virtual User User { get; set; } 
    public virtual User User1 { get; set; } 
} 

您可以控制通过[显示的文本显示的问题显示]属性在您的模型上。在你的情况下,你要设置的基础模型的属性对用户1:

public class User 
{ 
    [Display(Name = "Submitted By")] 
    public string UserName; 
} 

有关DisplayAttribute类的更多详细信息,请参见https://msdn.microsoft.com/en-us/library/system.componentmodel.dataannotations.displayattribute.name%28v=vs.110%29.aspx

+0

我是新的在asp.net所以我想新的,哪个类是这是这是类是availa如果是,则从我的自定义SQL数据库中导入的模型中,然后它不起作用。 –

+0

和我正在使用mvc而不是.aspx网页表单先谢谢你 –

+0

编辑你的帖子为你的模型类添加代码,我们可以再看一次。 –

这是一个为我工作的人。

@Html.LabelFor(model => model.category_type_id, "Category Type", htmlAttributes: new { @class = "control-label col-md-2" }) 

只要你想更改标签显示的文本没有必要改变你的模型.. 只需编辑您的Razor视图像这样:

<dt> 
    @Html.DisplayName("Submitted By") 
</dt> 
<dd> 
    @Html.DisplayFor(model => model.User1.UserName) 
</dd> 

OR

<dt> 
     Submitted By 
</dt> 
<dd> 
    @Html.DisplayFor(model => model.User1.UserName) 
</dd>