Advanced MVC: Building Web Applications Using the ASP.NET Web API with C#
This course provides students with the skills needed to create sophisticated web applications using advanced features of ASP.NET MVC, the Entity Framework, Web API, and the popular JavaScript libraries jQuery, jQuery UI, Bootstrap and AngularJS. Students will build several ASP.NET MVC web applications using Visual Studio during the week to reinforce the skills they learn.
The course begins with an overview of ASP.NET MVC for experienced programmers and then covers the fundamentals of responsive website design. Students then learn how to use Bootstrap with MVC to make a web site responsive on devices from large desktop displays to small mobile devices.
The course includes coverage of Single-Page Applications. In these types of applications, the entire page is loaded in the browser after the initial request. All other interactions with the server utilize Ajax requests to update the page. The service layer is implemented with the Web API.
Duration: 35 hours
Course Content:
Quick Review of ASP.NET MVC
- What is the MVC Design Pattern?
- Structure of an ASP.NET MVC Web Application
- Creating an ASP.NET MVC Application Using Visual Studio
- Building Controllers to Handle HTTP Requests
- Designing Views Using Razor
- Using Layouts
- Coding Models
- Understanding Default Routing
|
Creating Views Using HTML Helpers
- What are HTML Helpers?
- Understanding the Built-in HTML Helpers
- Working with Inline Helpers
- Working with Custom Helpers
|
Responsive Applications Using Bootstrap
- What is a Responsive Application?
- What is Bootstrap?
- Normalization Across Browsers
- Working with Accordion
- Mobile First Design
- Understanding Bootstrap.css and Bootstrap.js
- Including Bootstrap in a Layout and/or View
- Understanding Bootstrap Typography
- Understanding Bootstrap's Grid System
- Principles for Designing a View
- Working with Forms and Bootstrap
|
Using jQuery with MVC
- What is jQuery?
- Adding jQuery to an MVC Layout and/or Page
- Understanding jQuery Selectors
- Using jQuery to Modify the DOM
- Using jQuery to POST a Form
|
Using Ajax to Build Interactive MVC Applications
- What is Ajax?
- Working with Partial Views
- Making Asynchronous Calls Using jQuery
- Working with JSON Data
|
Using jQuery UI Widgets with MVC
- What is jQuery UI?
- Including jQuery UI in an MVC Layout or View
- jQuery UI Widgets
- Working with Tabs
- Working with DatePicker
- Working with Accordian
- Working with Menu
- Working with AutoComplete
- Working with Dialog
- Working with Tooltips
- Using jQuery UI Themes
|
MVC and Routing
- Default Routing
- Custom Routes
- Why Use Custom Routes?
- Understanding RouteConfig
- Registering Convention-Based Routes
- Adding Constraints with Convention-Based Routes
- Using Attribute Routing
- Adding Constraints with Attribute Routing
|
Working with the Entity Framework
- What is the Entity Framework?
- Entity Framework Strategies
- Using Database First
- Generating the Context and Entity Classes
- Writing Basic Queries
- Performing Joins
- Interacting with Stored Procedures
- Making Database Updates
- Code First
- Designing the Data Context
- Building the Entities
- Configuring Relationships
- Seeding Tables
- Writing Basic Queries
- Performing Joins
- Interacting with Stored Procedures
- Making Database Updates
|
Creating the Service Layer Using Web API
- What is Web API?
- Exposing Services and Data
- Types of Clients that Can Work with Web API
- Creating a Web API Service
- Working with Web API Controllers
- Understanding Web API Action Results
- Working with Data
- Filtering Requests
- Routing and Web API
- Creating Web API Help Pages
- Creating REST Services with Web API
- Configuring Web API
- Securing a Web API
- Using a Web API with MVC
|
Building Single Page Applications with ASP.NET MVC, Web API and AngularJS
- What is the Architecture of a Single-Page Application?
- What is AngularJS?
- Understanding the AngularJS Architecture
- Including AngularJS within the Page
- Building AngularJS Controllers
- Creating an AngularJS Template to Define a View
- Using CSS3 Properties to Perform Animation Effects
|
Working with NuGet
- What is NuGet?
- What Types of Packages are Available?
- Installing NuGet Packages
- Popular NuGet Packages
- .NET JSON Libraries
- Logging
- JavaScript Libraries
|
|