Full Stack C# Development
Course Description
This five day course will take developers who have completed our Object Oriented Programming in C# course and give them the practical skills they will need to work with C# and the .NET Framework in real world web applications.
5 Days
€1850.00
Prerequisites
Attendees should be familiar with C# syntax and general Object Oriented Programming techniques, ideally having completed the Object Oriented Programming in C# Course.Who should attend?
Programmers who would like to take their C# and .NET skills to the level that is required to create real-world web applications.Learning Objectives
At the conclusion of this course, attendees will:Have a high level of confidence in working with C# and ASP.NET Core MVC
Understand enterprise software development techniques
Have a good understanding of coding using interfaces
Know the difference between Object Relational Mapping and traditional Relational Database access
Be able to create a web application using the MVC pattern
Be able to deliver a professional look and feel using Bootstrap, Font-Awesome and jQuery
Be able to create a RESTful web service using an ASP.NET MVC Api Controller
Be able to interact with the RESTful web service using front-end development techniques
Understand how to externalise configuration from the application
Be able to deploy an ASP.NET Core MVC web application
Be able use Test Driven Development techniques
Understand Continuous Integration
C# & .NET Web Development
.NET framework overview.NET Core
ASP.NET Introduction
IIS (Internet Information Server)
Some newer more advanced C# topics
This lesson will ensure that all attendees understand some of the newer or more advanced C# programming syntax including:Named parameters
Default parameters
Optional parameters
Null conditional
Templated strings
Understanding arrow functions and the functional programming style
Collection classes with generics
List operations using arrow functions
Overview of Linq operations
Async / await and asynchronous development techniques
Enterprise Software Concepts
Coding to InterfacesConvention over configuration
Dependency Injection
What are design patterns?
The Model View Controller design pattern
Test Driven Development (TDD)
Continuous Integration
Object Relational Mapping (ORM)
Attribute-driven coding
Synchronous vs Asynchronous operations
ASP.NET Core MVC
Getting started with web applications in ASP.NET Core MVCCreating a project
Adding a Controller
Configuring endpoint routing
Returning a View
Passing variables from the Controller to the View
Using ViewBag
Using a Model
More about controllers
Understanding the Http protocol and the parts of a http requestPassing parameters to an action method
Path parameters
Query parameters
Understanding http response status codes
Generating the expected errors
More about views
Mixing code and htmlUnderstanding separation of concerns and what should and should not be coded in a view
Razor syntax
UI Tag Helpers
More about models
Understanding the role of the Model in the MVC patternModel conventions
Getting models from a request body
Passing models to a view
Forms and Form Validation
Creating a formHtml helpers
Attribute driven validation
Viewing the validation messages
The Post request method
Data Access
The DAO patternCreating a DAO interface
Creating a DAO object using traditional relational database
Object Relational Mapping in .NET
Understanding Object Relational MappingEntity Framework
Code first approach
Data first approach
Creating a DAO object using the entity framework
Layouts
Why use layouts?Rendering the main content
Default layout
Sections
Creating a Professional Look & Feel
Adding front-end libraries to your layoutIntroduction to Bootstrap
Adding Bootstrap to your project
Create a Bootstrap navigation bar
Add multiple pages to your site
Setting the active class for the page you are on
Adding font-awesome
Front-End Development
Overview of JavaScriptUnderstanding the difference between front-end (JavaScript) and back-end (Razor) code
Introduction to jQuery
Front end event handling
Front end DOM manipulation
Introduction to Ajax
RESTful Web Services
Introduction to RESTful Web ServicesUsing Postman
ASP.NET Core MVC API Controller
Understanding routing for an api controller
Configuring routes using attributes
Generating the expected status codes from an Action
More Advanced Front-end Development Techniques
Replicate server-side pages using front end techniquesUnderstand the pros and cons of front end vs back end code
Create dialogs using Bootstrap modals
Security
ASP.NET MVC security featuresUnderstanding Authentication and Authorisation
Adding a login page to our web application
Web application security threats
Test Driven Development
Adding unit tests to your applicationRunning the tests
Automating the testing
Devops
What is continuous integration?CI strategies for ASP.NET applications
Externalising your configuration
Setting up a different configuration for production
Deployment of ASP.NET MVC applications
C#OOP.NET.NET Frameworkasp.netasp.net coreasp.net core mvcmvcTDDVisual StudioVisual Studio 2022Visual Studio 2026VS2026