zoukankan      html  css  js  c++  java
  • ABP框架中使用MySQL数据库

    首先说明:本文使用Mysql这块拷贝自:https://blog.csdn.net/tangmou_ren/article/details/84856892,感谢作者。

    1.移除SQL Server的Nuget包

    打开程序包管理器控制台,并选中xxx.EntityFrameworkCore

    执行下面两条命令:

    uninstall-package microsoft.entityframeworkcore.design
    uninstall-package microsoft.entityframeworkcore.sqlserver

    2.安装MySQL的Nuget包

    执行下面两条命令:

    install-package pomelo.entityframeworkcore.mysql.design
    install-package pomelo.entityframeworkcore.mysql

    3.更改配置文件

    在解决方案的EntityFrameCore层找到DbContextConfigurer文件,并做如下修改:

    4.修改数据库连接字符串

    在appsetting.json文件中修改数据库连接字符串:

    "Default": "Server=localhost;Port=3306;Database=你的数据库名;Uid=数据库用户名;Pwd=密码;"

    5.添加数据迁移

    先说明下:这个步骤需要先将xxx.Web.Host设为启动项,否则会提示xxx.Web.Host不是启动项错误信息。

    删除EntityFrameCore层中Migrations文件夹里的所有文件,别删除Migrations文件夹。

    然后重新生成解决方案,接着打开程序包管理器控制台,选中.EntityFrameworkCore,输入以下命令:

    Add-Migration Init

    此时你的Migrations文件夹里会新增几个文件,接着输入命令:

    Update-Database

    至此,mysql数据库就会自动生成数据库和响应的表。


    下面说下如何新增表?

    提前说明:这块参考自:https://www.cnblogs.com/dacaba/p/9910726.html,感谢作者。

    我们是基于CodeFirst开发的。所以需要先定义实体,然后再进行迁移,最终生成表结构。

    实体如下:

    namespace AbpDemo.Persons
    {
        public class Person : FullAuditedEntity
        {
            public string Name { get; set; }
            public int Sex { get; set; }
        }
    }

    然后再在基础层(EntityFrameworkCore)的类AbpDemoDbContext添加数据集Persons

    public DbSet<Person> Persons { get; set; }

    最后执行Add-Migration Init xxxx和Update-Database命令就可以了。其中xxxx你可以随便命名,但最好见名知意。

  • 相关阅读:
    [轉]Flex实现代码分离mxml/as
    [轉]PHP执行MYSQL存储过程报错:Commands out of sync; you can't run this command now 问题的解决
    [轉]mysqli & pdo使用实例和详解
    JSON格式驗證以及格式說明
    [轉]can't return a result set in the given context及参数解释
    PHP ADODB資源
    [轉]Virtual PC 网络设置(Networking)
    [轉]20个非常有用的PHP类库
    [轉]MySQL存储过程 ERROR Handler 异常处理
    [轉]如何通过Jquery获取radio的值
  • 原文地址:https://www.cnblogs.com/subendong/p/13199866.html
Copyright © 2011-2022 走看看