• ABP官方angular(默认)项目配置


    ABP == ASP.NET Boilerplate Project


    1.项目环境配置


    1.开发工具:Visual Studio 2019
    2.数据库:使用的是MySql(8.0的,但是应该和版本没关系)数据库
    我的数据库是使用的phpMyStudy里面的数据库,因为可以不用在电脑上下载MySql数据库---下载地址:https://www.xp.cn/download.html
    你也可以使用本地下载的MySql
    
    ---- mysql数据库会有一个问题,在后面提及
    3.net sdk:5.0.414版本
    4.navicat数据库连接工具
    

    2.下载官方案例


    2.1进入官网,点击Get started

    ABP官网: https://aspnetboilerplate.com/

    2.2现在对应.net版本的项目

    注意(选择对应版本):Target Version 和 Target Framework的对应关系,我的.net版本是5.0,所以我的target version 选择 v5.x

    查看.net版本方法(win10系统):
    1.打开设置
    2.找到控制面板
    3.点击程序->程序和功能-->发现我们的.net sdk版本为5.0.414
    

    2.3填写信息,下载模板->我这里的项目名为:TestABP

    2.4解压zip文件到自定义目录

    2.5使用vs2019打开解决方案

    attention:打开的目录


    3将默认数据库(SqlServer)修改为MySql -- 如果你安装过SqlServer可以略过此过程


    3.1 使用NuGet卸载SqlServer的程序包和安装MySql的程序包

    1.打开NuGet(工具->NuGet包管理器->程序包管理控制台)

    2.在程序包管理控制台卸载SqlServer的程序包->我的已经写在过来,所以爆红了

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


    3.安装MySql程序包(工具->NuGet包管理器->管理解决方案的NuGet程序包)

    安装microsoft.entityframeworkcore.MySql和microsoft.entityframeworkcore.design 
    安装原理相同,演示一个,*.design不考虑版本
    


    注意:还是版本问题:我们安装5.x的版本,因为.net是5.x的->选好版本->点击安装

    3.2更改DbContextConfigurer.cs文件

    1.找到DbContextConfigurer.cs文件

    2.修改DbContextConfigurer.cs文件为如下

    using System;
    // System模块是后导入的,为了使用System.Version对象
    using System.Data.Common;
    using Microsoft.EntityFrameworkCore;
     
    namespace MyProduct.EntityFrameworkCore
    {
        public static class MyProductDbContextConfigurer
        {
            public static void Configure(DbContextOptionsBuilder<MyProductDbContext> builder, string connectionString)
            {
                //原来的
                //builder.UseSqlServer(connectionString);
                //修改后
                builder.UseMySql(connectionString, new MySqlServerVersion(new Version(8, 0, 11)));
            }
     
            public static void Configure(DbContextOptionsBuilder<MyProductDbContext> builder, DbConnection connection)
            {
                //原来的
                //builder.UseSqlServer(connection);
                //修改后
                builder.UseMySql(connection, new MySqlServerVersion(new Version(8, 0, 11)));
            }
        }
    }
    

    3.3修改数据库连接字符串

    1.修改TestABP.Migrator项目里面的appsettings.json数据库连接字符串

    {
      "ConnectionStrings": {
        "Default": "Server=localhost; Database=在数据库里面新建的数据库名; Port=3306(端口号);Uid=用户名;Pwd=密码"
      }
    }
    

    2.修改TestABP.Web.Host项目里面的appsettings.json数据库连接字符串

    {
      "ConnectionStrings": {
        "Default": "Server=localhost; Database=TestABPDb; Port=3306;Uid=root;Pwd=123"
      }
    }
    

    3.4 删除 (项目名)TestABP.EntityFrameworkCore下面的Migrations(中文意思:迁移)文件夹里面的所有文件

    1.不删除Migrations文件夹

    3.5 清理解决方案和重新生成解决方案

    清理解决方案

    注意这里如果爆.net版本错误,说明你的ABP项目需要的.net sdk版本和你的visual studio 2019里面的.net sdk版本不同,重新下载和vs版本相同的
    abp项目即可.
    

    重新生成解决方案

    没报错误就成功了


    4 设置TestABP.Web.Host为启动项目->颜色加黑则成功


    4.1 进行数据库迁移

    1.打开程序包管理控制台,选中 *.EntityFrameworkCore

    2.输入命令

    add-migration XXXX,其中XXXX可以自定义名字 - 我用的是InitMySql
    
    update-database
    

    错误1:关键字长度不够

    Applying migration '20180205084033_Initial_Migration'.
    Failed executing DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
    CREATE INDEX `IX_AbpLanguageTexts_TenantId_Source_LanguageName_Key` ON `AbpLanguageTexts` (`TenantId`, `Source`, `LanguageName`, `Key`);
    MySql.Data.MySqlClient.MySqlException (0x80004005): Specified key was too long; max key length is 1000 bytes ---> MySql.Data.MySqlClient.MySqlException (0x80004005)
    ...
    

    1.如果你使用的是phpMyStudy的数据库MySql -- 解决方法如下
    修改mysql默认数据库引擎改为Inndb,重启一下mysql数据库再进行数据库迁移就可以

    2.如果你使用的是本地数据库,出现错误1,建议找文档-
    成功示例


    5 运行项目配置


    5.1 无法运行(ctrl+F5)问题

    正常的abp项目无法运行,会报如下错误

    该项目不知道如何运行配置文件 IIS Express。
    

    5.2解决办法,把项目设置成项目启动

    在启动项目(*.Web.Host)处右键属性-->调试 -->启动改为项目即可

    5.3正常使用ctrl+F5即可启动项目


    6.如何打开web前端界面


    1.在搜索引擎的url栏中输入

    或者直接在vs2019中点击地址

    2.端口号可能不同,如何确定->使用这里的端口号

    3.如果还打不开web界面
    我猜测可能是没有IIS服务器的事,百度一下安装一下IIS服务器
    3.成功界面


  • 相关阅读:
    Thread Based Parallelism
    Thread Based Parallelism
    The Divide and Conquer Approach
    Algorithms
    FTP
    POP and IMAP
    通过 python 处理 email
    Android开发环境搭建简介
    Hello world
    mybatis3.2初学感悟
  • 原文地址:https://www.cnblogs.com/nanfengnan/p/16374996.html
Copyright © 2020-2023  润新知