微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我想使用EF 6 Code First方法重命名表

如何解决我想使用EF 6 Code First方法重命名表

嗨,我有一个实体,如下所示:

public class Complaint
{
    public Complaint()
    { }
    [Key]
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    public int Id { get; set; }

    [Index("IX_UniqueConstraintComplaint",1,IsUnique = true)]
    public int? inspectionRequestId { get; set; }
    public inspectionRequest inspectionRequest { get; set; }

    [Index("IX_UniqueConstraintComplaint",2,IsUnique = true)]
    public int? inspectionResultId { get; set; }
    public inspectionResult inspectionResult { get; set; }

    [Index("IX_UniqueConstraintComplaint",3,IsUnique = true)]
    public int? CaseId { get; set; }
    public Case Case { get; set; }

    [Index("IX_UniqueConstraintComplaint",4,IsUnique = true)]
    public string ComplaintId { get; set; }
}

我想在以下几个列名更改的情况下重命名该实体,有人可以帮我吗

public class RequestResultCaseComplaint
    {
        public RequestResultCaseComplaint()
        { }

        [Key]
        [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
        public int RequestResultCaseComplaintId { get; set; }        

        [Index("IX_UniqueConstraintComplaint",IsUnique = true)]
        public int? inspectionRequestId { get; set; }
        public inspectionRequest inspectionRequest { get; set; }

        [Index("IX_UniqueConstraintComplaint",IsUnique = true)]
        public int? inspectionResultId { get; set; }
        public inspectionResult inspectionResult { get; set; }

        [Index("IX_UniqueConstraintComplaint",IsUnique = true)]
        public int? CaseId { get; set; }
        public Case Case { get; set; }

        [Index("IX_UniqueConstraintComplaint",IsUnique = true)]
        [required]
        [StringLength(20)]
        public string ComplaintId { get; set; }
    }

我以前像第二种情况一样拥有该实体,不幸的是我删除了它,现在当我再次尝试使用相同的名称创建时,我不知道EF是否已缓存它,但是EF无法识别它,有人可以在这方面帮我吗,EF是否将已创建的具有相同名称的实体缓存,我们如何清理它? 即使删除了实体并尝试重新生成,它也不允许我再次创建相同的实体。

或者至少我可以重命名现有的Entity及其列,请问该如何提供帮助?

解决方法

可以显示您的DbContext类吗? 更改您的DbContext

public DbSet<yourrenametable>yourrenametable{ get; set; }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。