From 0126b80a9041c4d0409a3cedecc686cef82ed0c9 Mon Sep 17 00:00:00 2001 From: Halil ibrahim Kalkan Date: Thu, 28 Jun 2018 15:18:00 +0300 Subject: [PATCH] Added startup template document. --- ...Getting-Started-AspNetCore-MVC-Template.md | 64 ++++++++++++++++++ docs/Index.md | 10 ++- docs/Tutorials/AspNetCore-Mvc/Part-I.md | 3 + docs/images/bookstore-create-template.png | Bin 0 -> 32422 bytes docs/images/bookstore-homepage.png | Bin 0 -> 11607 bytes docs/images/bookstore-user-management.png | Bin 0 -> 19157 bytes .../bookstore-visual-studio-solution.png | Bin 0 -> 7369 bytes docs/images/pcm-update-database.png | Bin 0 -> 6450 bytes docs/images/set-as-startup-project.png | Bin 0 -> 3923 bytes 9 files changed, 75 insertions(+), 2 deletions(-) create mode 100644 docs/Getting-Started-AspNetCore-MVC-Template.md create mode 100644 docs/Tutorials/AspNetCore-Mvc/Part-I.md create mode 100644 docs/images/bookstore-create-template.png create mode 100644 docs/images/bookstore-homepage.png create mode 100644 docs/images/bookstore-user-management.png create mode 100644 docs/images/bookstore-visual-studio-solution.png create mode 100644 docs/images/pcm-update-database.png create mode 100644 docs/images/set-as-startup-project.png diff --git a/docs/Getting-Started-AspNetCore-MVC-Template.md b/docs/Getting-Started-AspNetCore-MVC-Template.md new file mode 100644 index 0000000000..3e6310592c --- /dev/null +++ b/docs/Getting-Started-AspNetCore-MVC-Template.md @@ -0,0 +1,64 @@ +## ASP.NET Core MVC Template + +### Creating a new project + +Go to the template creation page, enter a project name and create your project as shown below: + +![bookstore-create--template](images/bookstore-create-template.png) + +When you click to the *create* button, a new Visual Studio solution is created and downloaded with the name you have provided. + +### The Solution Structure + +Open the zip file downloaded and open in **Visual Studio 2017 (15.7.0+)**: + +![bookstore-visual-studio-solution](images/bookstore-visual-studio-solution.png) + +The solution has a layered structure (based on Domain Driven Design) where; + +* **.Domain** project is the domain layer. +* **.Application** project is the application layer. +* **.Web** project is the presentation layer. +* **.EntityFrameworkCore** project is the EF Core integration package. + +The solution does also contain unit & integration test projects properly configured to work with **EF Core** & **SQLite in-memory** database. + +### Creating the Database + +Check the **connection string** in the **appsettings.json** file under the **.Web** project: + +````json +{ + "ConnectionStrings": { + "Default": "Server=localhost;Database=BookStore;Trusted_Connection=True" + } +} +```` + +The solution is configured to use **Entity Framework Core** with **MS SQL Server** (EF Core supports [various](https://docs.microsoft.com/en-us/ef/core/providers/) database providers, so you can use another DBMS if you want). + +Right click to the **.Web** project and select **Set as StartUp Project**: + +![set-as-startup-project](images/set-as-startup-project.png) + +Open the **Package Manager Console**, select **.EntityFrameworkCore** project as the **Default Project** and run the `Update-Database` command: + +![pcm-update-database](D:\Github\abp\docs\images\pcm-update-database.png) + +This will create a new database with the name configured. + +### Running the Application + +You can now run the application which will open the **home** page: + +![bookstore-homepage](images/bookstore-homepage.png) + +Click to the **Login** button, enter `admin` as the username and `1q2w3E*` as the password to login to the application. + +Startup template includes the **identity management** module. Once you login, the Identity management menu will be available where you can manage **roles**, **users** and their **permissions**. + +![bookstore-user-management](D:\Github\abp\docs\images\bookstore-user-management.png) + +### What's Next? + +* [Step by step application development tutorial for ASP.NET Core MVC](Tutorials/AspNetCore-Mvc/Part-I.md) \ No newline at end of file diff --git a/docs/Index.md b/docs/Index.md index e5009a9946..6e782ef136 100644 --- a/docs/Index.md +++ b/docs/Index.md @@ -3,8 +3,14 @@ ## Table of Contents * Getting Started - * With Console Application - * With ASP.NET Core Web Application + * From Startup Templates + * [ASP.NET Core MVC Template](Getting-Started-AspNetCore-MVC-Template.md) + * From Empty Projects + * With Console Application + * With ASP.NET Core Web Application +* Tutorials + * Application Development + * [With ASP.NET Core MVC](Tutorials/AspNetCore-Mvc/Part-I.md) * Fundamentals * Dependency Injection * AutoFac Integration diff --git a/docs/Tutorials/AspNetCore-Mvc/Part-I.md b/docs/Tutorials/AspNetCore-Mvc/Part-I.md new file mode 100644 index 0000000000..9b3c968692 --- /dev/null +++ b/docs/Tutorials/AspNetCore-Mvc/Part-I.md @@ -0,0 +1,3 @@ +## ASP.NET Core MVC Tutorial - Part I + +TODO \ No newline at end of file diff --git a/docs/images/bookstore-create-template.png b/docs/images/bookstore-create-template.png new file mode 100644 index 0000000000000000000000000000000000000000..7cc96c8c943ede472f900a0b0f73be8874b5e4c2 GIT binary patch literal 32422 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 literal 0 HcmV?d00001 diff --git a/docs/images/bookstore-user-management.png b/docs/images/bookstore-user-management.png new file mode 100644 index 0000000000000000000000000000000000000000..bc3c176557bc97715e0dd0f9640a78ec8a485bd0 GIT binary patch literal 19157 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 literal 0 HcmV?d00001 diff --git a/docs/images/bookstore-visual-studio-solution.png b/docs/images/bookstore-visual-studio-solution.png new file mode 100644 index 0000000000000000000000000000000000000000..b47636cd68b8b34478e44ccee1383de06bd5ba03 GIT binary patch literal 7369 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 literal 0 HcmV?d00001 diff --git a/docs/images/set-as-startup-project.png b/docs/images/set-as-startup-project.png new file mode 100644 index 0000000000000000000000000000000000000000..13da5caf6cf85fb6688033c6a436e182304ff332 GIT binary patch literal 3923 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 literal 0 HcmV?d00001