ABP 重写主键ID 多表查询ID无效
1.重写ID [Column("数据库指定的ID")]
[Column("CarTypeID")]
public override int Id { get; set; }
2.映射中指定 这里用的是AutoMapper
第一个UserID是Dto模型里面的 第二个Id是实体类中我们重写的那个Id
var carTypeDtoMapper = mapperConfig.CreateMap<CarType, CarTypeDto>();
carTypeDtoMapper.ForMember(dto => dto.CarTypeID, map => map.MapFrom(m => m.Id));
3.对于多表查询外键ID无效的情况 可以在实体中指定外键
[ForeignKey("CarBrand")]
public int? BrandID { get; set; }
对于ForeignKeyVS给我们做了良好的解释
//如果将 ForeigKey 特性添加到外键属性,则应指定关联的导航属性的名称。如果将 ForeigKey 特性添加到导航属性,则应指定关联的外键的名称。如果导航属性具有多个外键,则使用逗号分隔的外键名称列表。有关更多信息,请参见批注。
public ForeignKeyAttribute(string name);
4.获取数据 将数据返回 这里用的是DTO模型传输数据
var list = _carTypeRepository.GetAllList();
//将POCO对象转为DTO对象
return list.MapTo<List<CarTypeDto>>();
ABP 重写主键ID 多表查询ID无效的更多相关文章
- ABP 重写主键ID
[Column("你那表的源主键名")] public override leixing Id{ get; set; }
- Mysql增加主键或者更改表的列为主键的sql语句
...
- SQL查找数据库中所有没有主键的数据表脚本
--SQL查找数据库中所有没有主键的数据表脚本 --运行脚本后在消息中可能会显示下面现象中的一种:--(1)数据库中所有数据表都有主键(则证明所有数据表都有主键)--(2)当前数据表[数据表名]没有主 ...
- 吃货眼中的sqlalchemy外键和连表查询
前言 使用数据库一个高效的操作是连表查询,一条查询语句能够查询到多个表的数据.在sqlalchem架构下的数据库连表查询更是十分方便.那么如何连表查询?以及数据库外键对连表查询有没有帮助呢?本篇文章就 ...
- Oracle根据主键获取对应表,Oracle根据外键获取相关表
Oracle根据主键获取对应表 select * from user_constraints a, USER_CONS_COLUMNS b where a.CONSTRAINT_TYPE = 'P' ...
- 数据库 SQL 外键约束 多表查询
多表设计与多表查询 1.外键约束 表是用来保存现实生活中的数据的,而现实生活中数据和数据之间往往具有一定的关系,我们在使用表来存储数据时,可以明确的声明表和表之前的依赖关系,命令数据库来 ...
- MySQL数据库(4)_MySQL数据库外键约束、表查询
一.外键约束 创建外键 --- 每一个班主任会对应多个学生 , 而每个学生只能对应一个班主任 ----主表 CREATE TABLE ClassCharger( id TINYINT PRIMARY ...
- MySQL,Oracle建立主键自增表
MySQL 在建表的时候声明字段即可 id int auto_increment primary key not null Oracle 第一步:建立表 drop table t_role; crea ...
- mybatis plus 主键生成 Twitter雪花算法 id 及修改id为字符型
mybatis plus配置主键生成策略为2,就是 使用Twitter雪花算法 生成id spring boot中配置为: GlobalConfiguration conf = new GlobalC ...
随机推荐
- Dock镜像初探索
一.安装CentOS版DockerCE 1.1 卸载旧的版本 yum remove docker \ docker-client \ docker-client-latest \ docker-com ...
- MySQL系列(十)--用户权限及远程访问
本文基于MySQL8.0,记录一下完整的远程访问的过程,以及这个过程中可能遇到的问题,MySQL运行在阿里云服务器,操作系统:CentOS 7.6 64位 顺便说下,买服务器还是要双十二这种拉新活动再 ...
- wsgi Python的WEB框架
Bottle是一个快速.简洁.轻量级的基于WSIG的微型Web框架,此框架只由一个 .py 文件,除了Python的标准库外,其不依赖任何其他模块. pip install bottle easy_i ...
- CF 500B New Year Permutation
传送门 题目大意 给你一个数列,再给你一个矩阵,矩阵的(i,j)如果为1就表示可以将i,j位置上的数交换,问任意交换之后使原数列字典序最小并输出. 解题思路 因为如果i与j能交换,j与k能交换,那么i ...
- windows--"git安装" 及 "使用git上传项目到github" 详细步骤
一.下载安装包 https://git-for-windows.github.io/(放在任何一个你想放的地方(系统盘或非系统盘)). 二.开始安装 很简单,双击安装包,一直next下去,到了安装的最 ...
- 易语言连接RCON详细教程实例(演示连接Unturned服务器RCON)
一.准备工作 工 具: 1.易语言 2.RCON服务端(这里我使用unturned服务器的RCON作为演示) 二.启动Unturned服务器并配置RCON 打开unturned服务器路径:F:\Unt ...
- 洛谷P1080 [NOIP2012提高组D1T2]国王游戏 [2017年5月计划 清北学堂51精英班Day1]
P1080 国王游戏 题目描述 恰逢 H 国国庆,国王邀请 n 位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右 手上面分别写下一个整数,国王自己也在左.右手上各写一个整数.然后,让这 n 位大臣排 ...
- Liferay 7.1发布啦
下载地址: https://cdn.lfrs.sl/releases.liferay.com/portal/7.1.0-m1/liferay-ce-portal-tomcat-7.1-m1-20180 ...
- Js Array 删除
数组删除操作 Array.prototype.inArray = function (e) {for (i = 0; i < this.length; i++) {if (this[i] == ...
- NodeJS概述2-事件插件-简易爬虫
事件 events 模块 原生事件写法 /* * 1. 事件分类 * DOM0级 事件 - on + eventType * DOM2级 事件 - 事件监听 * 2. 事件构成部分有哪些? dom.o ...