Following along in the ASP.NET Core 6 Crash Course on Pluralsight
This is my version of the course. For reference go to this link
- Install the .NET SDK
- Have an IDE installed - the three main options are:
- VS Code - include the C# language extension
- Visual Studio or Visual Studio for Mac - Community Edition is fine
- JetBrains Rider
- Trust the dotnet dev https certificate:
dotnet dev-certs https -t
N O T E: when this project runs it will create two different Sqlite
databases, stored in the Environment.SpecialFolder.LocalApplicationData
folder. (C:\Users\USERNAME\AppData\Local
on Windows and /Users/USERNAME/.local/share
on Mac):
carvedrock-admin.db
(this is the main application database)carvedrock-admin-users.db
(this is ASP.NET Core Identity)
Any flavor of Visual Studio or Rider will include the things you need to run ASP.NET projects, but VS Code requires some additional setup.
The C#
extension (link above) is required to use this repo. I have some other settings that you may be curious about
and they are described in my VS Code gist.
The application is the starting point for an "Admin" application for a fictional company called Carved Rock for its users to maintain the products that it sells.
- The primary technology is ASP.NET Core 6 MVC
- Entity Framework (EF) Core is used with Sqlite for the database
- Basic CRUD operations are supported on Products and Cateogories
- Styled with Bootstrap and the Litera Bootwatch theme
- Repository and Domain Logic classes are used with dependency injection (DI) to support testability
- The Category of a product is a related entity with navigation property
- Validation is present on both categories and products, and a sample of more complex validation is included on Products with FluentValidation
- Products and Categories require users to be authenticated
- ASP.NET Identity (scaffolded) is used for the the authentication (self-registration works fine - no inital users are created)
- The "initial data" is reset each time the app starts, so feel free to play around!!
- .NET CLI (
dotnet
command) - ASP.NET Core MVC
- User Interface
- Data / Entity Framework (EF) Core
- Fluent Validation
- Identity