abp-vnext-pro 实战(三,给用户表增加头像,工号,类型字段)

发布时间 2023-07-29 23:57:26作者: Gu

初识ABP vNext(5):ABP扩展实体 - xhznl - 博客园 (cnblogs.com)

Customizing Application Modules Extending Entities | Documentation Center | ABP.IO

 Advanced table mapping - EF Core | Microsoft Learn

    public class AbpUserExt : FullAuditedEntity<Guid>
    {
        /// <summary>
        /// 头像
        /// </summary>
        public string Avatar { get; set; }

        /// <summary>
        /// 个人介绍
        /// </summary>
        public string Introduction { get; set; }

        /// <summary>
        /// 用户编号(例如工号)
        /// </summary>
        public string UserCode { get; set; }

        /// <summary>
        /// 用户类型,0=后台,1=前台,2=分销商。。。
        /// </summary>
        public int UserType { get; set; }

    }

 

在XXXDbContextModelCreatingExtensions 的方法里

 builder.Entity<AbpUserExt>(b =>
            {
                b.ToTable(AbpIdentityDbProperties.DbTablePrefix + "Users");
                b.ConfigureByConvention();
                b.Property(b => b.Avatar).IsRequired(false).HasMaxLength(255).HasComment("用户头像").HasColumnName(nameof(AbpUserExt.Avatar));
                b.Property(b => b.Introduction).IsRequired(false).HasMaxLength(255).HasComment("用户简介").HasColumnName(nameof(AbpUserExt.Introduction));
                b.Property(b => b.UserCode).IsRequired(false).HasMaxLength(50).HasComment("用户编号").HasColumnName(nameof(AbpUserExt.UserCode));
                b.Property(b => b.UserType).IsRequired(true).HasDefaultValue(0).HasComment("用户类型").HasColumnName(nameof(AbpUserExt.UserType));
                b.HasOne<IdentityUser>().WithOne().HasForeignKey<AbpUserExt>(x => x.Id);
            });