zoukankan      html  css  js  c++  java
  • EF 配置

    DbContext
        public class ZSZDbContext : DbContext
        {
            //ILog ILogger 容易混淆
            private static ILog log = LogManager.GetLogger(typeof(ZSZDbContext));
    
            public ZSZDbContext() : base("name=connstr")
            //name=conn1表示使用连接字符串中名字为conn1的去连接数据库
            {
                Database.SetInitializer<ZSZDbContext>(null);
                this.Database.Log = sql =>
                {
                    log.DebugFormat("EF执行SQL:{0}", sql);
                };
            }
    
            protected override void OnModelCreating(DbModelBuilder modelBuilder)
            {
                base.OnModelCreating(modelBuilder);
                modelBuilder.Configurations.AddFromAssembly(Assembly.GetExecutingAssembly());
            }
            public DbSet<AdminUserEntity> AdminUsers { get; set; }
            public DbSet<UserEntity> Users { get; set; }
            public DbSet<CityEntity> Cities { get; set; }
            public DbSet<CommunityEntity> Communities { get; set; }
            public DbSet<PermissionEntity> Permissions { get; set; }
            public DbSet<RegionEntity> Regions { get; set; }
            public DbSet<RoleEntity> Roles { get; set; }
            public DbSet<SettingEntity> Settings { get; set; }
            public DbSet<AttachmentEntity> Attachments { get; set; }
            public DbSet<HouseEntity> Houses { get; set; }
            public DbSet<HouseAppointmentEntity> HouseAppointments { get; set; }
            public DbSet<IdNameEntity> IdNames { get; set; }
            public DbSet<HousePicEntity> HousePics { get; set; }
            public DbSet<AdminLogEntity> AdminUserLogs { get; set; }
        }
    Entity
        public class HouseEntity : BaseEntity
        {
            public long CommunityId { get; set; }
            public virtual CommunityEntity Community { get; set; }
            public long RoomTypeId { get; set; }
            public virtual IdNameEntity RoomType { get; set; }
            public string Address { get; set; }
            public int MonthRent { get; set; }
            public long StatusId { get; set; }
            public virtual IdNameEntity Status { get; set; }
            public decimal Area { get; set; }
            public long DecorateStatusId { get; set; }
            public virtual IdNameEntity DecorateStatus { get; set; }
            public int TotalFloorCount { get; set; }
            public int FloorIndex { get; set; }
            public long TypeId { get; set; }
            public virtual IdNameEntity Type { get; set; }
            public string Direction { get; set; }
            public DateTime LookableDateTime { get; set; }
            public DateTime CheckInDateTime { get; set; }
            public string OwnerName { get; set; }
            public string OwnerPhoneNum { get; set; }
            public string Description { get; set; }
    
            public virtual ICollection<AttachmentEntity> Attachments { get; set; } = new List<AttachmentEntity>();
            public virtual ICollection<HousePicEntity> HousePics { get; set; } = new List<HousePicEntity>();
        }
    Config
        class HouseConfig : EntityTypeConfiguration<HouseEntity>
        {
            public HouseConfig()
            {
                ToTable("T_Houses");
                HasRequired(h => h.Community).WithMany().HasForeignKey(h => h.CommunityId).WillCascadeOnDelete(false);
                HasRequired(h => h.RoomType).WithMany().HasForeignKey(h => h.RoomTypeId).WillCascadeOnDelete(false);
                HasRequired(h => h.Status).WithMany().HasForeignKey(h => h.StatusId).WillCascadeOnDelete(false);
                HasRequired(h => h.DecorateStatus).WithMany().HasForeignKey(h => h.DecorateStatusId).WillCascadeOnDelete(false);
                HasRequired(h => h.Type).WithMany().HasForeignKey(h => h.TypeId).WillCascadeOnDelete(false);
                Property(h => h.Address).IsRequired().HasMaxLength(128);
                Property(h => h.Description).IsOptional();
                Property(h => h.Direction).IsRequired().HasMaxLength(20);
                Property(h => h.OwnerName).IsRequired().HasMaxLength(20);
                Property(h => h.OwnerPhoneNum).IsRequired().HasMaxLength(20).IsUnicode(false);
            }
        }
  • 相关阅读:
    第二十篇:不为客户连接创建子进程的并发回射服务器(poll实现)
    第十九篇:不为客户连接创建子进程的并发回射服务器(select实现)
    第十八篇:批量处理情况下的回射客户端
    第十七篇:IO复用之select实现
    修改文件中的内容,使用fileinput模块
    登陆脚本
    内置函数 字符串操作
    loj 1316(spfa预处理+状压dp)
    loj 1099(最短路)
    loj 1044(dp+记忆化搜索)
  • 原文地址:https://www.cnblogs.com/kikyoqiang/p/10847172.html
Copyright © 2011-2022 走看看