1. VS2019 community 16.2.4
2. Nodejs v10.16.3 (npm v6.9.0)
3. Net Core 2.2 (
1. vs2017: https://dotnet.microsoft.com/download/dotnet-core/2.2#sdk-2.2.109
2. vs2019: https://dotnet.microsoft.com/download/thank-you/dotnet-sdk-2.2.402-windows-x64-installer
4. MySql 8.0.18 (https://dev.mysql.com/downloads/file/?id=490395)
5. Visual Studio Code
You can find "Angular Environment Build Steps" in Angular Environment Build Steps.md
You can find deploy steps in "Deployment of Angular Application" in bottom.
-
BackEnd
- Double click BusinessHall\BusinessHall.sln to open project, and then Build it.
- Tools==>NuGet Package Manager==>Package Manager Console, choose "BusinessHall.EntityFrameworkCore" as default project.
- input "update-database", enter
- Open MySql and execute scripts folder files
- Select "BusinessHall.EntityFrameworkCore" as startup project, start it.
-
FrontEnd
-
Open Visual Studio Code.
-
Open project folder "BusinessHall\src\BusinessHall.Web.Host", CTRL+~ to open console, execute below two scripts npm install -g @angular/cli npm install
-
If your nodejs version is newer than before, you need to execute below script to upgrade the sass npm rebuild node-sass
-
Start Project npm start
-
Publish Project npm run build:prod
-
It has created T4 template to help you create your Apis. It contained GetAll,GetById,Create,Update,Delete, DeleteForMultiple functions.
The original source that download from aspnetboilerplate ,it didn't support IE browser. For My branch, it has been changed to support it.
But it will be increased the js size when publish . If your customs that not need to support IE, you can change them back.
1. Need to support IE, change them like below
1.1 Remove "not" from "not IE 9-11" in BusinessHall.Web.Host\browserslist file
1.2 change "target" value from "es2015" to “es5” in BusinessHall.Web.Host\src\tsconfig.json file
2. Do NOT need to support IE, change them back like below
2.1 Append "not" in the left of "IE 9-11" in BusinessHall.Web.Host\browserslist file
2.2 change "target" value from "es5" to “es2015” in BusinessHall.Web.Host\src\tsconfig.json file
1. User name: admin password: 123qwe
2. Tenant name: Default
1. Add constant field in BusinessHall.Core\Authorization\PermissionNames.cs
2. Add code like below in BusinessHall.Core\Authorization\BusinessHallAuthorizationProvider.cs
context.CreatePermission(PermissionNames.Pages_Menus, L("Menus"));
3. Build project, it will be inserted into tables to assign this permission to admin role
Make sure all models in BusinessHallModels folder for code rules.
- add fields like below code in BusinessHall.Core\Authorization\Users\User.cs
[StringLength(BusinessHallConsts.MaxLength25)] public string Telephone { get; set; } 2. Open Vs2019, Tools==>NuGet Package Manager==>Package Manager Consolle, choose "BusinessHall.EntityFrameworkCore" as default project 3. Input Add-Migration "AddFieldsInUsers", "AddFieldsInUsers" value you can according your style to rename it, and click "Enter" keyboard 4. Input "update-database", enter
Interface:I**AppService Class: **AppService When create service in Applications, the name is AbcAppService and IAbcAppService, once created, please don't rename it, otherwise, the service will not work any more.
This is a template to create ASP.NET Core MVC / Angular based startup projects for ASP.NET Boilerplate. It has 2 different versions:
- ASP.NET Core MVC & jQuery (server rendered multi-page application).
- ASP.NET Core & Angular (single page application).
User Interface is based on BSB Admin theme.
https://www.primefaces.org/primeng/#/
https://www.primefaces.org/primereact/#/icons/
https://material.angular.io/components
You can check _screenshots\Material icons.png to find all materila icons menu menu_open more_horiz more_vert person folder access_alarm save save_all queue equalizer-柱状图 work view_list assignment person_add group location_city notifications refresh arrow_back arrow_forward close
Seperated Project: We used the angular-cli tooling to build an Angular solution. You can use the ng build --prod command to publish your project. It publishes to the dist folder by default. You can then host this folder on IIS or any web server you like.
Merged Project-----This is current project used=========Deployment ===========Deployment ===========Deployment ===================== If you have merged Angular UI project into ASP.NET Core project then you only need to publish your .Host project. After publish .Host project, you should copy files that are in .Host/wwwroot/dist folder to publish_folder/wwwroot. For example: Move files in .Host/wwwroot/dist to C:\inetpub\wwwroot\my-website\wwwroot
Install Asp.NetCore 2.2 and Hosing
If deployed to IIS and open it, popup 500.21, please change web.config like below: Original: Changed:
If you upgrade Asp.Net Core to 3.0, please accodrding below steps to change it: After upgrading from 2.1 to .Net Core 3.0. I had to download the Runtime & Hosting Bundle For Windows: https://dotnet.microsoft.com/download/thank-you/dotnet-runtime-3.0.0-windows-hosting-bundle-installer. Also, I had to change my web.config modules attribute
Solution Details & Other Features Token-Based Authentication If you want to consume APIs/application services from a mobile application, you can use the token based authentication mechanism just like we do for the Angular client. The startup template includes the JwtBearer token authentication infrastructure.
We will use Postman (a chrome extension) to demonstrate requests and responses.
MIT.
Thanks for ABP to provide code structure.
- Zhen (Evan) Wang
- Tel: 18901599114
- QQ: 273509239
- WeChat: 18901599114,273509239
- Email: 18901599114@163.com
- Location: Nanjing 南京







