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);
            }
        }
  • 相关阅读:
    网络编程
    mysql
    python 基础
    vim 操作
    linux 基本命令
    基本库使用(urllib,requests)
    震撼功能:逐浪CMS全面支持PWA移动生成意指未来
    硬件能力与智能AI-Zoomla!逐浪CMS2 x3.9.2正式发布
    从送外卖到建站售主机还有共享自行车说起-2017年8月江西IDC排行榜与发展报告
    HTTP协议知多少-关于http1.x、http2、SPDY的相关知识
  • 原文地址:https://www.cnblogs.com/kikyoqiang/p/10847172.html
Copyright © 2011-2022 走看看