.net core DisplayAttribute在Dotnet核心好友类中不起作用

.net core DisplayAttribute在Dotnet核心好友类中不起作用,.net-core,displayattribute,buddy-class,.net Core,Displayattribute,Buddy Class,我一直在尝试将DisplayAttribute附加到Dotnet Core中我的好友类中的字段,但它没有出现在我的视图中。例如,在视图中显示“标题”而不是“标题” 这两个类通过ModelMetadataType链接 哪里错了 原始博客类: namespace KuteCore.Models { public partial class Blogs { public int BlogId { get; set; } public string Tit

我一直在尝试将DisplayAttribute附加到Dotnet Core中我的好友类中的字段,但它没有出现在我的视图中。例如,在视图中显示“标题”而不是“标题”

这两个类通过ModelMetadataType链接

哪里错了

原始博客类:

namespace KuteCore.Models
{
    public partial class Blogs
    {
        public int BlogId { get; set; }
        public string Title { get; set; }
        public string Description { get; set; }
    }
}

BlogsMetadata类:

namespace KuteCore.Models.MetaData
{
    public class BlogsMetadata
    {
        [Display(Name ="عنوان")]
        [Required(ErrorMessage ="خطااا")]
        public string Title { get; set; }
        [Display(Name = "توضیحات")]
        public string Description { get; set; }
    }
}

这是我的观点

@model KuteCore.Models.Blogs
    <div class="form-group">
                <div class="col-md-10">
                    @Html.EditorFor(model => model.Title, new { htmlAttributes = new { @class = "form-control" } })
                    @Html.ValidationMessageFor(model => model.Title, "", new { @class = "text-danger" })
                </div>
                @Html.LabelFor(model => model.Title, htmlAttributes: new { @class = "control-label col-md-2" })


            </div>

            <div class="form-group">
                <div class="col-md-10">
                    @Html.EditorFor(model => model.Description, new { htmlAttributes = new { @class = "form-control" } })
                    @Html.ValidationMessageFor(model => model.Description, "", new { @class = "text-danger" })
                </div>
                @Html.LabelFor(model => model.Description, htmlAttributes: new { @class = "control-label col-md-2" })


            </div>
@model KuteCore.Models.Blogs
@EditorFor(model=>model.Title,new{htmlAttributes=new{@class=“form control”})
@Html.ValidationMessageFor(model=>model.Title,“,new{@class=“text danger”})
@LabelFor(model=>model.Title,htmlAttributes:new{@class=“controllabel col-md-2”})
@EditorFor(model=>model.Description,new{htmlAttributes=new{@class=“form control”})
@Html.ValidationMessageFor(model=>model.Description,“,new{@class=“text danger”})
@LabelFor(model=>model.Description,htmlAttributes:new{@class=“controllabel col-md-2”})

我找到了问题所在。我将元数据类放在一个名称空间中,问题得到了解决

namespace KuteCore.Models
{
    [ModelMetadataType(typeof(BlogsMetadata))]
    public partial class Blogs { }
    public class BlogsMetadata
    {
        [Display(Name ="عنوان")]
        [Required(ErrorMessage ="خطااا")]
        public string Title { get; set; }
        [Display(Name = "توضیحات")]
        public string Description { get; set; }
    }
}

那么,您如何在视图中显示数据?视图中显示“标题”而不是“标题”
namespace KuteCore.Models
{
    [ModelMetadataType(typeof(BlogsMetadata))]
    public partial class Blogs { }
    public class BlogsMetadata
    {
        [Display(Name ="عنوان")]
        [Required(ErrorMessage ="خطااا")]
        public string Title { get; set; }
        [Display(Name = "توضیحات")]
        public string Description { get; set; }
    }
}