ABP学习:领域层创建实体(使用MySql数据库)
来源:互联网 发布:打击电信网络诈骗视频 编辑:程序博客网 时间:2024/06/07 09:31
C#中很经典的框架ABP,官网模版:https://aspnetboilerplate.com/
选择templates()
这里选用dot core2.0 创建单页面
下载压缩包后,在core下创建实体类(一个类就是一个表,类中的字段或者属性就是表的字段),要继承Entity,其中Entity后面的<类型>,这个类型就是表中的主键的类型,下面的例子中主键就是string类型的。
ABP创建数据库属于code First ,因此需要先完成实体类
例:
将创建好的实体类在EF中进行注册,即:
到MyProjectDbContext.cs中进行声明:
修改连接数据库mysql的步骤:
1、修改数据库配置信息
因为官网模版是针对sqlServer的,而我这里用的是MySql,因此需要修改配置信息:appsetting.json文件和数据库的驱动配置:ProjectDbContextConfigurer.cs和ProjectEntityFrameworkModule.cs
将项目中涉及到是所有的appsetting.json文件的信息修改为自己的数据库信息:
{ "ConnectionStrings": { "Default": "Server=119.204.111.01;Database=Test123;charset=utf8;user=Test23;password=password;" }}
注意所有的都要改,要不然后面就会出错
添加Mysql的引用
修改办法:工具--->NuGet 管理器--->管理结局方案的NuGet程序包
程序包源选择:全部,然后选中Pomelo.EntityFrameworkCore.MySql 点击安装
安装完成后需要重新生成解决方案。
然后修改数据库的配置信息,原本模板是使用的sqlServer数据库,因此需要修改驱动:在ProjectDbContextConfigurer.cs中修改为使用mySql连接
public static class MyProjectDbContextConfigurer { public static void Configure(DbContextOptionsBuilder<MyProjectDbContext> builder, string connectionString) { //builder.UseSqlServer(connectionString); builder.UseMySql(connectionString); } }
然后修改连接字符串,在ProjectEntityFrameworkModule.cs中修改PreInitialize
public override void PreInitialize() { if (!SkipDbContextRegistration) { Configuration.Modules.AbpEfCore().AddDbContext<MyProjectDbContext>(options => { //数据库配置信息 MyProjectDbContextConfigurer.Configure(options.DbContextOptions, options.ConnectionString); }); } }
然后使用NuGet在程序包管理器控制台,默认项目改为:EntityFrameworkCore
键入:
Add-Magrator name
成功,则代表数据迁移完毕
使用Update-Database创建数据库
以后再更新数据库的表或者字段时,直接使用这两条命令即可,但是要注意迁移时的名称每次都不能写一样的
- ABP学习:领域层创建实体(使用MySql数据库)
- ABP入门系列(2)——领域层创建实体
- java 工具篇(MySQL数据库工具) 数据库实体创建
- ABP入门系列(3)——领域层定义仓储并实现
- ABP从入门到精通(2):aspnet-zero-core 使用MySql数据库
- ABP从入门到精通(2):aspnet-zero-core 使用MySql数据库
- 使用CodeSmith生成oracle数据库表的实体层(Model)
- 使用CodeSmith生成oracle数据库表的实体层(Model)
- abp新建实体
- 03-05 创建和编辑AutoCAD实体(五) 使用图层、颜色和线型(2)使用颜色
- 03-05 创建和编辑AutoCAD实体(五) 使用图层、颜色和线型(3)使用线型
- 使用JMeter创建数据库(Mysql)测试
- 使用JMeter创建数据库(Mysql)测试
- 使用JMeter创建数据库(Mysql)测试
- 使用JMeter创建数据库(Mysql)测试
- 使用JMeter创建数据库(Mysql)测试
- 使用JMeter创建数据库(Mysql)测试
- 使用JMeter创建数据库(Mysql)测试
- Unity 2D Sprite 一张精灵图片【自动切割(Automatic )】成【不规则的许多个小图片】的步骤
- Wannafly挑战赛1 A-DP
- webstorm 的es6设置之后还是出现红线的解决方式
- springmvc mvc:view-controller使用
- 实验四顺序栈的实现
- ABP学习:领域层创建实体(使用MySql数据库)
- CountDownLatch使用countDown方法来触发其他等待线程再执行的问题
- android AIDL,跨进程通讯
- 为什么Java工具类方法为静态类
- memcache和memcached的区分
- java设计模式---装饰者设计模式
- EDW与维度模型间的抉择
- 集群时间点同步及完全分布式搭建
- 嵌入式开发(ARM9)学习笔记(八)-NFS与TFTP服务器配置