ASP.NET Core Development
This course takes a detailed look at the latest APIs and development techniques for creating dynamic, modular, and testable web sites using ASP.NET Core. We'll explore the latest features available in ASP.NET Core and show how to get the best out of the latest toolset and integration possibilities.
What you will learn:
- ASP.NET Core principles
- MVC architecture and benefits
- Creating views, view components, and tag helpers
- Using ASP.NET dependency injection and configuration
- Test-driven development
- Navigation and state management
- Creating RESTful services using Web API
- Creating Single Page Applications (SPAs)
Audience:
ASP.NET developers who want to use the MVC architecture.
The course is intended for professional web developers who use Microsoft Visual Studio in an individual-based or team-based, small-sized to large development environment. Candidates for this course are interested in developing advanced web applications and want to manage the rendered HTML comprehensively. They want to create websites that separate the user interface, data access, and application logic.
Prerequisites:
- 6 months experience of C# programming
- ASP.NET development experience is advantageous but not essential
Course outline:
- Introduction to ASP.NET Core: Introduction to .NET Core; NET Core essentials; Creating a simple ASP.NET Core web app; Using the generic host builder in ASP.NET Core 3; A closer look at ASP.NET Core middleware; Creating custom OWIN middleware components
- Getting Started with MVC: Introduction to ASP.NET Core MVC; Understanding controllers; Understanding views; Layout pages; A closer look at Razor syntax; Razor pages
- Creating a Complete ASP.NET MVC Application: Design considerations; Defining models and views; Handling form submissions; Additional techniques; Asynchronous action methods
- Tag Helpers: Introduction to tag helpers; UI tag helpers; Link and script tag helpers; Environment tag helper; Cache tag helper
- Structuring ASP.NET Core MVC Applications: Design considerations; Defining the domain model; Defining the Web application
- Dependency Injection, Configuration, and Entity Framework: Dependency injection principles; DI in ASP.NET Core; Configuration in ASP.NET Core; Using Entity Framework Core 3.0
- Test Driven Development with ASP Core MVC: TDD principles; Unit testing frameworks for .NET Core; XUnit.net walkthrough; Unit testing ASP.NET MVC controllers; Mocking
- Defining Custom Tag Helpers: Custom tag helpers; Tag attributes; Additional techniques; Worked example: Pagination tag helper
- Implementing Navigation: Defining view-model classes; Implementing data filtering in a controller; Understanding the routing mechanism; Adding custom entries to a route table; Defining defaults, parameters, and validation; Generating URLs and hyperlinks; Custom route constraints
- State Management: Using hidden fields; Session and application state; Custom model bindings; Distributed caching
- Creating RESTful Services using Web API: Overview of Web API; Building servers and clients; Content negotiation; Attribute routing; Custom model binding; Invoking RESTful services from Ajax clients
- Creating Single Page Applications: Overview of SPAs; Using GruntJS, NPM, and Bower support; Creating SPAs using Angular 4 and Knockout
Andy Olsen - author of the course
Andy is a freelance consultant and instructor based in the UK, working mostly in the City of London and Oxford. Andy has been working with .NET since the Beta 1 days and has extensive experience in many facets of .NET development including WCF, WPF, WF, ASP.NET MVC Web development, and mobile applications. Andy has designed and written many Microsoft Official Curriculum courses in the last decade, and has been engaged as author and technical reviewer with Apress on some of their biggest selling books.