【问题标题】:Using a class out of class library as a Entity for EF使用类库中的类作为 EF 的实体
【发布时间】:2015-09-15 06:02:10
【问题描述】:

假设我的一个类库中有一个class AClass,我在多个项目中使用它。

现在我构建了一个新项目,它使用这个 AClass 并希望使用实体框架将其存储到数据库中。

我不想编写一个包装类并将每个属性从AClass 分配给AClassEntityWrapper,反之亦然。 也许它可以自动?序列化?不知道。。

另一方面,我不能将AClass 声明为实体,因为我不想将实体框架也包含到所有其他项目中。

是否有一种简单的可能性来处理这种情况?

【问题讨论】:

    标签: c# entity-framework serialization


    【解决方案1】:

    不确定我是否正确理解了您的问题。 但是你可以映射你的类 OnModelCreating 在您的 DbContext 中覆盖 OnModelCreating 方法和 AClass 的配置

     public class className : DbContext
     {
         public DbSet<AClass> AClasses { get; set; }
    
         protected override void OnModelCreating(DbModelBuilder modelBuilder)
         {
             modelBuilder.Configurations.Add(new AClassConfiguration());
         }
     }
    

    假设你的 AClass 有两个字段

    public class AClass
    {
        public int Id { get; set; }
        public string Name { get; set; }
    }
    
    
    public class AClassConfiguration : EntityTypeConfiguration<AClass>
    {
        public AClassConfiguration()
        {
            this.ToTable("table_name");
            this.HasKey(t => t.Id);
            this.Property(t => t.Id).HasColumnName("Id");
            this.Property(t => t.Name).HasColumnName("name");
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-02-04
      • 1970-01-01
      • 2018-06-04
      • 1970-01-01
      • 2013-03-30
      • 2019-06-14
      • 1970-01-01
      相关资源
      最近更新 更多