在apb-vnext的实体的创建中可以确实字段的长度、说明、对应的表、表中给字段加的索引

以项目中的订单表为例,如下:

 [Comment("订单主表")]
[Table("t_voucher_order")]
 [Index(nameof(VoucherCode))]
public class Order : AuditedAggregateRoot<Guid>, ISoftDelete, IMultiTenant
{
public Order() { }
public Order(Guid id)
{
this.Id = id;
}
/// <summary>
/// 单据编号
/// </summary>
[MaxLength(32)]
[Comment("单据编号")]
public string VoucherCode { get; set; } /// <summary>
/// 发货仓库
/// </summary>
[MaxLength(36)]
[Comment("发货仓库")]
public Guid WarehouseId { get; set; } /// <summary>
/// 发货仓库
/// </summary>
[MaxLength(50)]
[Comment("仓库名称")]
public string WarehouseName { get; set; } /// <summary>
/// 供应商编码
/// </summary>
[MaxLength(36)]
[Comment("供应商编码")]
public Guid? SupplierId { get; set; } /// <summary>
/// 供应商名称
/// </summary>
[MaxLength(20)]
[Comment("供应商名称")]
public string SupplierName { get; set; } /// <summary>
/// 申请时间
/// </summary>
[Comment("申请时间")]
public DateTime CreatedOn { get; set; } /// <summary>
/// 申请人
/// </summary>
[MaxLength(20)]
[Comment("申请人")]
public string CreatedBy { get; set; } /// <summary>
/// 审核时间
/// </summary>
[Comment("审核时间")]
public DateTime? AuditOn { get; set; } /// <summary>
/// 审核人
/// </summary>
[MaxLength(20)]
[Comment("审核人")]
public string AuditBy { get; set; } /// <summary>
/// 订单状态:0 暂存 1已作废 2已提交 3已驳回 5已审核
/// </summary>
[Comment("订单状态")]
public OrderStatusEnum Status { get; set; } /// <summary>
/// 删除标识
/// </summary>
[Comment("删除标识")]
public bool IsDeleted { get; set; } = false; public Guid? TenantId { get; set; }
}

迁移表到数据库后看效果

Add-Migration order202405110001

表生成的效果

索引创建效果:

ABP-VNext 用户权限管理系统实战06---实体的创建标准及迁移的更多相关文章

  1. SpringSecurity权限管理系统实战—八、AOP 记录用户、异常日志

    目录 SpringSecurity权限管理系统实战-一.项目简介和开发环境准备 SpringSecurity权限管理系统实战-二.日志.接口文档等实现 SpringSecurity权限管理系统实战-三 ...

  2. SpringSecurity权限管理系统实战—一、项目简介和开发环境准备

    目录 SpringSecurity权限管理系统实战-一.项目简介和开发环境准备 SpringSecurity权限管理系统实战-二.日志.接口文档等实现 SpringSecurity权限管理系统实战-三 ...

  3. SpringSecurity权限管理系统实战—二、日志、接口文档等实现

    系列目录 SpringSecurity权限管理系统实战-一.项目简介和开发环境准备 SpringSecurity权限管理系统实战-二.日志.接口文档等实现 SpringSecurity权限管理系统实战 ...

  4. SpringSecurity权限管理系统实战—四、整合SpringSecurity(上)

    目录 SpringSecurity权限管理系统实战-一.项目简介和开发环境准备 SpringSecurity权限管理系统实战-二.日志.接口文档等实现 SpringSecurity权限管理系统实战-三 ...

  5. SpringSecurity权限管理系统实战—六、SpringSecurity整合jwt

    目录 SpringSecurity权限管理系统实战-一.项目简介和开发环境准备 SpringSecurity权限管理系统实战-二.日志.接口文档等实现 SpringSecurity权限管理系统实战-三 ...

  6. SpringSecurity权限管理系统实战—七、处理一些问题

    目录 SpringSecurity权限管理系统实战-一.项目简介和开发环境准备 SpringSecurity权限管理系统实战-二.日志.接口文档等实现 SpringSecurity权限管理系统实战-三 ...

  7. SpringSecurity权限管理系统实战—九、数据权限的配置

    目录 SpringSecurity权限管理系统实战-一.项目简介和开发环境准备 SpringSecurity权限管理系统实战-二.日志.接口文档等实现 SpringSecurity权限管理系统实战-三 ...

  8. Vue Abp vNext用户登录(Cookie)

    因为Abp vNext没找到Vue的模板,网上也没找到相关vNext的例子,只能自己试着写写,asp.net core abp vue都是刚学不久,所以很粗糙也可能有错误的地方,如果您看到请指正,谢谢 ...

  9. SpringSecurity权限管理系统实战—五、整合SpringSecurity(下)

    系列目录 前言 上篇文章SpringSecurity整合了一半,这次把另一半整完,所以本篇的序号接着上一篇. 七.自定义用户信息 前面我们登录都是用的指定的用户名和密码或者是springsecurit ...

  10. SpringSecurity权限管理系统实战—三、主要页面及接口实现

    系列目录 前言 后端五分钟,前端半小时.. 每次写js都头疼. 自己写前端是不可能的,这辈子不可能自己写前端的,只能找找别人的模板才能维持的了生存这样子.github,gitee上的模板又多,帮助文档 ...

随机推荐

  1. 9 CSS背景属性

    CSS 背景属性 1. background-color(背景颜色) 页面的背景颜色有四种属性值表示,分别是transparent(透明),RGB十进制颜色表示,十六进制颜色表示和颜色单词表示. 属性 ...

  2. #Pollard-Rho,高精度#洛谷 3499 [POI2010]NAJ-Divine Divisor

    题目 给定\(m\)个数\(a_i\),令\(n=\prod_{i=1}^m a_i\), 问有多少个大于1的正整数\(d\)满足\(d^{\max k}|n\) 并输出\(\max k\),\(m\ ...

  3. Docker学习路线4:Docker基础知识

    Docker是一个平台,简化了在轻量.可移植的容器中构建.打包和部署应用程序的过程.在本节中,我们将介绍Docker的基础知识.其组件以及您需要开始使用的关键命令. 容器是什么? 容器是一个轻量级.独 ...

  4. C++获取appdata路径

    C++获取appdata路径的方式:    SHGetSpecialFolderPath wchar_t buffer[MAX_PATH]; SHGetSpecialFolderPath(0, buf ...

  5. 课程预告丨12月15日官方直播带你领略ArkUI的声明式开发范式之美

    方舟开发框架(ArkUI)的声明式开发范式有什么优势?Java/JS/eTS(extended TypeScript)三种语言,用哪种语言更好? 12月15日 19:00-20:30,Hello Ha ...

  6. Bill的挑战

    看数据范围就知道应该要状压,也不难看出应该压缩位数的状态.所以设f[i][j]为前i位,相互匹配的字符串的状态. 那么,就会有 f[i+1][j&a[i][ch]]=(f[i+1][j& ...

  7. .gitignore 基础

    前言 gitignore文件有几种方式生成. 1.在创建版本库的时候生成. 2.自己手动添加: windows环境下,不能把文件直接改名为.gitignore,会提示你必须输入文件名.所以我们先新建一 ...

  8. cv2在图像上画不同比例的锚框

    ''' cv2在图像上画不同比例的锚框 ''' import cv2 import math # 画宽高比1:1的锚框 def display_11_anchor(img,anchor_11_left ...

  9. 【Oracle】列拆行/对多行数据的单行数据进行分割并多行显示

    [Oracle]列拆行/对多行数据的单行数据进行分割并多行显示 参考链接:Oracle 一行字符串拆分为多行_oracle一行拆分成多行-CSDN博客 背景:要对一个表的字段的内容进行分割,分隔符都是 ...

  10. 阿里 Seata 新版本终于解决了 TCC 模式的幂等、悬挂和空回滚问题

    简介: 今天来聊一聊阿里巴巴 Seata 新版本(1.5.1)是怎么解决 TCC 模式下的幂等.悬挂和空回滚问题的. 作者:朱晋君   大家好,我是君哥. 今天来聊一聊阿里巴巴 Seata 新版本(1 ...