Full Stack C# Development

Start date: TBC

Location: Virtual delivery

Cost: Subsidised rate €650

Programme overview

This course has been developed for people who have done a standard Object Oriented Programming in C# course who need to get more focused skills, so they can actually develop real world applications. It’s a combination of a few courses on .NET, MVC Core, DevOps etc. When you link these courses all together programmers see added benefits and gain skills they can use. This course will make it clearer for developers on how to use C# in their development roles.

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
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 Interfaces
Convention 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
Getting started with web applications in ASP.NET Core MVC
Creating 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 request
Passing parameters to an action method
Path parameters
Query parameters
Understanding http response status codes
Generating the expected errors
More about views
Mixing code and html
Understanding separation of concerns and what should and should not be coded in a view
Razor syntax
More about models
Understanding the role of the Model in the MVC pattern
Model conventions
Getting models from a request body
Passing models to a view
Forms and Form Validation
Creating a form
Html helpers
Attribute driven validation
Viewing the validation messages
The Post request method
Data Access
The DAO pattern
Creating a DAO interface
Creating a DAO object using traditional relational database
Object Relational Mapping in .NET
Understanding Object Relational Mapping
Entity Framework
Code first approach
Data first approach
Creating a DAO object using the entity framework
Why use layouts?
Rendering the main content
Default layout
Creating a Professional Look & Feel
Adding front-end libraries to your layout
Introduction 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 JavaScript
Understanding 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 Services
Using 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 techniques
Understand the pros and cons of front end vs back end code
Create dialogs using Bootstrap modals
ASP.NET MVC security features
Understanding Authentication and Authorisation
Adding a login page to our web application
Web application security threats
Test Driven Development
Adding unit tests to your application
Running the tests
Automating the testing
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

To register your interest or make an enquiry please click here

Enquire Now