为什么MVC会对EF模型类进行自动更新?

时间:2014-09-02 15:14:22

标签: entity-framework asp.net-mvc-4 model entity

我在我的MVC5应用程序中从我的数据库生成了实体模型。

当我尝试将[DispalyName]添加到某些属性时,它可以正常工作,但过了一段时间后,应用程序会自行刷新此类并删除所有自定义代码

public partial class Patient
    {
        public Patient()
        {
            this.PatientDetails = new HashSet<PatientDetail>();
        }

        public int PatientID { get; set; }
        [DisplayName("Last Name")]
        public string LastName { get; set; }
        public string FirstName { get; set; }

        public virtual ICollection<PatientDetail> PatientDetails { get; set; }
    }

为什么MVC会这样做以及如何禁用它?

1 个答案:

答案 0 :(得分:3)

我相信,因为您首先使用数据库,所以每次刷新时都会完全重新创建实体,因此您将丢失自定义属性。

另外,要取消Joe的评论,您应该创建一个视图模型并将[Display]属性放在那里,而不是直接放在实体上。