前言

这个项目是基于 ABP ASPNetCore 免费版,整合 NG-AlianNG-Zorro 的项目,所以比较适合熟悉 ABPAngular2+ 的开发人员,

如果你是新手,学习的话可以先了解以下资料

ABP资料:  

ABP官方文档-英文

ABP ASP.NET版 中文文档

Angular资料:

Angular官方中文文档

大漠穷秋 Angular2 基础视频教程

Antd-NG-Zorro 官方文档

NG-Alain 官网

话不多说,教程开始

一、下载项目

  1. 到github clone项目 : 项目地址

  1. 项目下载完成,准备配置项目
    clone根目录中的 src目录下 angular-zorro-free是前端angluar目录,aspnet-core是后台的目录)

二、后端解决方案初始化配置

  1. 还原nuget包

  1. 项目数据库连接字符串和跨域的基本配置
    将数据库连接字符串修改为你的连接字符串 (注意:默认数据库为 SQL Server ,最低要求 2012 版本)

  1. 修改项目调试启动配置信息

三、后端解决方案初始化数据库

  1. .Web.Host 设置为启动项目
  2. 打开程序包管理控制台,并设置默认项目为 .EntityFrameworkCore

  1. 输入命令,迁移数据库: update-database
    如果没有用过EFCore Code First做迁移,请先查阅资料 官方文档

到这里呢,后端解决方案就配置完成了,如果你的环境没有问题,这个时候只需要 Ctrl+F5 就能运行,运行成功后就能在浏览器看到如下界面了

四、前端项目初始化

后端项目配置完成之后,开始配置前端项目

  1. 打开前端项目 并 还原前端依赖库
    (前端项目目录:angular-zorro-free)
    (这里我使用的是vs code打开的项目)
    (输入命令,还原依赖库,我在这里是用的npm (npm install ) (可以用npm/yarn等等,看个人喜好))

  1. 前端依赖还原完成,输入命令运行项目: npm start

编译成功之后会自动打开浏览器,就能看到这个界面,默认账号: admin 密码: 123qwe

登陆之后的界面

至此,整个项目就成功运行起来

补充: 如果 后端 和 前端 的地址(IP、端口、域名)都修改了,需要重新修改后端和前端的配置

后端要修改的位置:

修改 appsettings.jsonCorsOrigins 的配置,修改为你的前端的地址(如:前端项目地址为 http://localhost:666 ,就在这里修改或添加这个地址),以 英文逗号 分隔

前端要修改的位置:

找到 appconfig.json 配置文件,

  1. remoteServiceBaseUrl 设置为后端的地址,如: http://localhost:10010
  2. appBaseUrl 设置为前端地址,如: http://localhost:666

按照上面这样修改完成之后应该就没有问题了,只要你没有改错的话....
那么,这篇文章也就到此结束了,希望大家多多支持...

[52ABP系列] - 001、SPA免费项目模版搭建教程的更多相关文章

  1. [52ABP系列] - 002、模板项目配合代码生成器开发

    前言 本篇的主要内容是 52ABP SPA模板如何配合52ABP代码生成器开发项目 如果不了解 52ABP 项目请先看我的第一篇文章 [52ABP系列] - 001.SPA免费项目模版搭建教程 话不多 ...

  2. 新巴巴运动网上商城 项目 快速搭建 教程 The new babar sports online mall project quickly builds a tutorial

    新巴巴运动网上商城 项目 快速搭建 教程 The new babar sports online mall project quickly builds a tutorial 作者:韩梦飞沙 Auth ...

  3. Chevereto免费图床搭建教程 | vps搭建免费图床教程

    Chevereto免费图床搭建教程 | vps搭建免费图床教程 本文首发于:https://chens.life/How-to-build-a-free-image-bed.html 前言 自从有了个 ...

  4. 架构系列:ASP.NET 项目结构搭建

    我们头开始,从简单的单项目解决方案,逐步添加业务逻辑的约束,从应用逻辑和领域逻辑两方面考虑,从简单的单个项目逐步搭建一个多项目的解决方案.主要内容:(1)搭建应用逻辑和领域逻辑都简单的单项目 (2)为 ...

  5. [Vue 牛刀小试]:第十六章 - 针对传统后端开发人员的前端项目框架搭建

    一.前言 在之前学习 Vue 基础知识点的文章中,我们还是采用传统的方式,通过在 html 页面上引用 vue.js 这个文件,从而将 Vue 引入到我们的项目开发中.伴随着 Node.js 的出现, ...

  6. 使用.NET 6开发TodoList应用(2)——项目结构搭建

    为了不影响阅读的体验,我把系列导航放到文章最后了,有需要的小伙伴可以直接通过导航跳转到对应的文章 : P TodoList需求简介 首先明确一下我们即将开发的这个TodoList应用都需要完成什么功能 ...

  7. Angular企业级开发(5)-项目框架搭建

    1.AngularJS Seed项目目录结构 AngularJS官方网站提供了一个angular-phonecat项目,另外一个就是Angular-Seed项目.所以大多数团队会基于Angular-S ...

  8. mvc项目架构搭建之UI层的搭建

    项目架构搭建之UI层的搭建 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构各部分解析 5.项目创 ...

  9. 创建基于maven的项目模版

    我们在实际工作中 ,有些项目的架构是相似的,例如基于 restful的接口项目,如果每次都重新搭建一套架构或者通过拷贝建立一个项目难免有些得不偿失,这里我们可以用maven的archtype建立项目模 ...

随机推荐

  1. Asp.Net 设计模式 之 “特殊”的单例模式

    特殊的单例模式 要点在这里,提前预览: public SingleDemo() { name = "yy"; age = 20; //特殊的单例,this指代得失当前的Single ...

  2. Asp.Net MVC之 自动装配、动态路径(链接)等

    一.Model层 using System; using System.Collections.Generic; using System.Linq; using System.Web; namesp ...

  3. bat 时间 的运算与提取

    比如在系统中date这个环境变量的值为 -- 星期六 年------%date:~,% 表示从左向右指针向右偏0位,然后从指针偏移到的位置开始提取4位字符,结果是2011 月------%date:~ ...

  4. 中国版 Office 365 (X-Tenant / Tango) 功能验证报告 - 2 基本步骤

    说明: 1. 前期准备 - 在Azure上模拟出生产环境: 包括父域域控.子域域控.父域的Exchange Server.子域的Exchange Server.对Exchange Server, 需要 ...

  5. HDU_1710_二叉树前序中序确定后序

    2018-3-6 按照王道机试书上的思路再做了一遍,先根据先序和中序建树,然后后序遍历. 静态分配数组用于建树,可以返回数组地址当作结点指针. #include<iostream> #in ...

  6. 【转】Google Chrome浏览器调试

    作为Web开发人员,我为什么喜欢Google Chrome浏览器 [原文地址:http://www.cnblogs.com/QLeelulu/archive/2011/08/28/2156402.ht ...

  7. ALTER TRIGGER - 修改一个触发器的定义

    SYNOPSIS ALTER TRIGGER name ON table RENAME TO newname DESCRIPTION 描述 ALTER TRIGGER 改变一个现有触发器的属性. RE ...

  8. Vim中文编码问题

    1.影响中文编码的设置项 encoding(enc):encoding是Vim的内部使用编码,encoding的设置会影响Vim内部的Buffer.消息文字等.在 Unix环境下,encoding的默 ...

  9. vs2019装了WDK后,编译其他vc工程,提示无法打开文件"msvcprtd.lib"

    今天安装了vs2019,而后又安装了wdk,随便写了一个控制台测试程序,居然报错.网上也查了一圈,也没有得到解决.报错内容如下: MSB8038:已启用Spectre缓解,但找不到Spectre缓解库 ...

  10. ipv6工具类

    package mapreduce.nat; import java.math.BigDecimal; import java.math.BigInteger; import java.net.Ine ...