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创建数据库


以后再更新数据库的表或者字段时,直接使用这两条命令即可,但是要注意迁移时的名称每次都不能写一样的


阅读全文
0 0