
Learn to build your first fully working single page application with ASP.NET Zero, using ASP.NET Core and Angular. This introduction outlines course goals and how to get up and running.
ASP.NET Zero provides a ready foundation for new web apps with a modern UI and proven architecture. It includes security, multi tenancy, localization, dependency injection, and built in testing.
Define goals of the ASP.NET Zero course, show what's in box, and explain how to start building an app with ASP.NET Zero as a foundation, including tooling and next steps.
Watch a finished application demo, showing login, remember me, and a dashboard with a phone book extension. Create, edit, and delete people and add multiple mobile numbers through a dialog.
Install the required tools to build an ASP.NET Zero app with ASP.NET Core and Angular on Windows, using Visual Studio (Community Edition), Node, npm, TypeScript, and Yarn, with Mac alternatives.
Prepare your ASP.NET Zero development environment by installing Visual Studio, Visual Studio Code, Node, npm, and TypeScript, then verify with tsc after installing globally via npm.
Begin by downloading ASP.NET Zero framework and Angular version, then set up Angular client and the API exposed to the Angular app, using Visual Studio Code for a single solution.
In this demo, download an ASP.NET Zero project by signing into a paid account, creating a demo application (Acme.phonebook), selecting the version and dot net core, and generating the download.
Configure and run an ASP.NET Zero app by updating the connection string and applying the database migration. Disable multi-tenancy and launch the API and Angular client on localhost:4200.
Conclude the first module by clarifying the Zimbabwe hospital model and its benefits, ensure your environment and first project runs, and prepare to explore ASP.NET Zero and the final application.
Explore the backend built with ASP.NET Core and the client-side Angular code, examine the architecture, and learn how the ASP.NET Zero power tools streamline setup to build a single-page application.
Discover the backend ASP.NET Core project behind the Angular SPA, focusing on API endpoints, application services, token-based authentication, and the web host that exposes the API.
Explore ASP.NET server-side features with code-first Entity Framework, migrations, and a context bridging code and database. Learn built-in authorization, caching, logging, background tasks, and token-based authentication for APIs.
Explore the server-side architecture of ASP.NET Zero, focusing on application services, code-first Entity Framework, token-based authentication, and permissions-driven access via Authorize attributes.
Learn how Swagger, an open source framework, integrates with ASP.NET Zero to design, build, document, and consume RESTful web services using automated documentation and code generation tools.
Visualize and test the API with swagger UI, exposing endpoints from the ASP.NET Zero server. Enable swagger in startup, authenticate, and try out pets and store calls.
A solid, prebuilt testing foundation with unit and integration tests is provided, including a base app class that sets up a fake in-memory database and easy context operations.
Demonstrates how ASP.NET Zero uses xUnit for unit testing, exploring the blank project and test solution, and shows deleting a user and confirming the user is removed.
Explore the app module in ASP.NET Zero, focusing on admin tasks, roles, users, languages, and visual and host settings to configure and extend the application.
Manage client side packages with yarn and npm in an ASP.NET Zero Angular app; leverage Angular CLI and NSwag to auto generate TypeScript proxies for API endpoints.
Explore how NSwag connects to a running ASP.NET Core API in Visual Studio and generates client-side code, including a TypeScript service file, by running the refresh.bat batch.
Demonstrates authenticating from Angular by requesting an access token from the token/authenticate endpoint, then using a bearer token for subsequent API calls, with JSON payloads and admin credentials.
Explore asp.net zero power tools to scaffold client and server code for new entities in an asp.net zero app, generating the angular application and server classes, database migrations, and permissions.
Explore client and service code in ASP.NET Zero to build a solid, testable foundation. See how industry frameworks and Visual Studio power tools enable tweaking and manual app development.
Build an end-to-end ASP.NET Zero application by creating a phonebook feature that lists people from the API, with each person carrying one or more phone numbers to manage.
Review the finished application that lists people from the backend and supports adding, deleting, and managing each person's phone numbers.
Start from an empty freshly downloaded application, add a localized menu item with an icon, and use the Angular router to load a new component-backed view when clicked.
Create a new angular route and phonebook component, configure app navigation, localization, and templates, then integrate and run the app to expose a new menu item to access the phonebook.
Create an entity for the person, add it to the database context, create a migration, ensure the database is up to date by default, and seed the initial data.
Demonstrates building a server-side person entity, configuring the entity framework core context, creating migrations, seeding initial data, and enabling multi-tenancy with the I must have tenant interface in ASP.NET Zero.
Create the application service to expose client-facing logic via the API, using a tailored data transfer object and transient dependency injection to keep domain logic in the domain layer.
Create an application service in the application project that the client calls, using DTOs with AutoMapper and a custom detail mapper to return a filtered person list.
Learn to write and run unit tests for an ASP.NET zero application service using an in-memory database, data seeding, and xUnit to validate getting all people and filtering by Adams.
Generate client boilerplate by running a bat file to create a proxy from the API's application services, then integrate the generated proxy into Angular code to connect with endpoints.
Extend the API and Angular app to add a person using a modal dialog, with create person input, data mapping, and unit tests.
Define a unique permission in the backend authorization provider, apply it with the authorized attribute on classes or methods, and enforce access and UI visibility via router and menus.
Define permissions on the server with the app authorization provider, then enforce them on the client using authorize attributes, routing guards, and menu updates.
Enable token-based authentication to securely access a service API exposing endpoints by validating user credentials at an open endpoint and issuing a token for the angler app in request headers.
Extend the domain to add a phone entity and associate it with person records. Migrate the database, update mappings and UI to create, edit, and delete phones for each person.
Learn how multitenancy in aspnet zero provides data isolation across tenants, and how to implement the must-have-tenant interface on an entity to filter data for the current tenant.
Enable multi tenancy by setting it to true and implementing the tenant interface on all relevant entities, add a migration for the tenant id, and verify data isolation across tenants.
Celebrate completing a working application and prepare for next steps as the final module closes the tutorial and offers pointers on where to go next.
Conclude the course by summarizing the material, offering next-step pointers, and sharing links to explore ASP.NET Zero in more detail.
Explore how ASP.NET Zero provides a solid starter solution for ASP.NET Core and Angular, enabling developers to build scalable apps with proven patterns, practices, and flexible versions for different platforms.
This is a complete video course for building applications on AspNet Zero platform using AspNet Core & Angular.
It starts with introducing AspNet Zero and its features. Then deeply investigates the source code structure with live demos and helps you to get up and running with AspNet Zero. If finally shows how to create your business functionality step by step on top of the existing source code.