Course Overview:
ASP.NET MVC is an open source web development framework from Microsoft that provides a Model View Controller architecture. ASP.net MVC this course offers an alternative to ASP.net web forms for building web applications. It is a part of the. Net platform for building, deploying and running web apps. This course will enable you the full control over the rendered HTML. Easy integration with JavaScript frameworks. Following the design of stateless nature of the web and RESTful URLs that enables SEO.
Course Objectives:
- Understand the benefits of MVC design over traditional ASP.NET Web Forms.
- Understand the about the role of Model, View and Controller in integrating them to develop a complete web application and Request life cycle.
- Understand how Routing API maps requests to action methods in the controller.
- Learn about the Razor Syntax Fundamentals, Layout View, Sections and Partial Views
- Learn how to reuse code rendering HTML using custom HTML Helper method
- Building Custom Model Binders for typical conditions in which built-in default binders are not usable.
- Understanding and applying validation framework for both client and server validations.
- Learn about the Architecture of Config File,App Settings, Exception Handling and Encrypting
- Connection String.
- Learn about the Sharing data across requests from same client/user using Cookies and Session management.
- Learn about the Output Caching and Data Caching.
- Access databases and performing CRUD operations using LINQ and Entity Framework.
- Learn about the Windows,Forms and Role-Based Authentication.
- Implementing ASP.NET Identities in ASP.NET MVC applications.
- Learn about the Mapping URL to Controller Action Method,Applying Constraints and Attribute Routing in MVC 5.
- Modularize using Areas.
- Learn about the Ajax Helper Methods, Jquery UI Controls and Jquery Templates.
- Compress the output using bundling and minification features. -Develop views which are mobile compatible.
- Develop Service Oriented RESTful services using Web API feature of ASP.NET MVC.
- Perform automated testing of Web applications created using ASP.NET MVC
- Build and deploy ASP.NET MVC application to the production server.
Pre-requisites:
- Basic knowledge of .Net Framework 3.5/4.5, C# Programming ,Entity Framework, Linq.
Target Audience:
- For beginners and professionals who want to learn ASP.NET MVC 5 step by step.
- Technical Team Leader
- Software Developer
Course Duration:
- 35 hours – 5 days
Course Content:
Introduction to Web Programming
You will learn about how the browser and Server gets communicating with each other, life cycle of HTTP, about the http protocol and also the importance of get and post methods.
- Communication between Web -Server and Web Browser
- HTTP Protocol
- HTTP Request Life Cycle
- Request and Response Structure
- About Get and Post methods
Overview of HMTL and JavaScript.
You will learn about the basics of Html, JavaScript language & the Document Object Model, Handling
Events in Javascript, Steps for Debugging Javascript, Performing Client side validations and Alter, show, hide and move objects on a web page.
- HTML Overview
- HTML Tags Reference
- HTML Examples
- Introduction to JavaScript
- JavaScript Examples
- Debugging JavaScript in VS.NET
Overview of Classic ASP
You will learn about the how html page is displayed on webserver,how asp page is rendered on the webserver, Asp objects, Installing IIS and ASP on Windows and Html form behavior.
- ASP Objects
- Understanding Form Tag
- Request and Response Model
- Sample Programs
Overview of ASP.NET WebForms
You will learn about the how to build the application using ASP.Net WebForms,ASP.Net
Architecture,ASP.Net WebForms Controls, Page events in page life cycle,Navigation and Masterpage.
- Creating an ASP.NET Website
- Using ASP.NET WebForm Controls
- NET Architecture
- Understanding Page Controller
- Architecture
- Navigating between Pages
- Overview of Master Pages
Introducing to ASP.NET MVC
You will learn about the major pieces of the Microsoft ASP.Net MVC Framework , Responsibilities of Model,View and Controller,benefits of MVC design over traditional ASP.NET Web Forms.
- What is MVC Architecture?
- What is ASP.NET MVC?
- Understanding Model
- Understanding View
- Understanding Controller
- Advantages of MVC based Web Application
- Features of ASP.NET MVC Framework
First MVC Application
You will learn about the MVC Folder Structure, how to create a new ASP.Net MVC project , Role of Model,View and Controller in integrating them to develop a complete web application and Request life cycle.
- Software Requirements
- Developing First MVC Applications
- Rendering HTML output
- Understanding Life Cycle of ASP.MVC Request
Exploring Controller’s
You will learn about the Passing data from controller to view,Action methods of Controller class,Action
Result object returns form action methods,Action filters and Asynchronous Controllers.
- Exploring Controllers and ControllerBase class
- Passing data from Controller to View using ViewData/ViewBag
- Types of Action Methods
- Action Method Parameters
- Action Selectors
- Action Filters Overview
- Authentication Filters in MVC 5
- Building Custom Action Filters
- Filter Override features.
- Asynchronous Controllers
Exploring Razor Views
You will learn about the Razor Syntax Fundamentals, Advantages of Razor syntax over traditional aspx markup syntax, Layout View , Implementing the Sections in view, Partial Views and Types of Views.
- Types of Views
- Introducing Razor View
- Razor Syntax Fundamentals
- Enum Support
- Layout view Razor (Master Pages)
- Significance of _ViewStart.cshtml
- Working with Sections
- Working with Partial Views
- Bootstrap support for editor templates
Digging into HTML Helpers
You will learn about what are Html helper methods,how to use them in razor syntax , how to use “For” methods with strongly typed models, overriding the Display and Editor templates and Building Custom
Helpers using Extension Methods
- HTML Helper Methods
- Render HTML Form
- Using DropDownList
- Binding Html Helper to Model
- Using “For” Methods with Typed Model
- Overriding Display Templates
- Overriding Editor Templates
- Custom Helper method
Understanding Model Binders
You will learn about the Default Model Binders and Building Custom Model Binders for typical conditions in which built-in default binders are not usable.
- Default model Binder
- Complex Type Model Binding
- FormCollection Model Binding
- Http Posted File Model Binding
- Bind Attribute
Annotations and Validations
You will learn about how to implement data annotation ,applying validation framework for both client and server validations, how to build custom validations and Developing Custom Unobtrusive Client Side
Validation
- Overview of Data Annotations
- Annotations and Validation Attributes
- How Validation Works
- Explicit server side validations of Models
- Custom Validations using IValidatableObject
- Developing Custom Unobtrusive Client Side Validation
- Applying Annotations to Model classes using Metadata class
Web Configuration File and Global Application Class
You will learn about the Architecture of Config File,App Settings, HttpApplication Class, Limitation of Exception handling, how to catch specific type of errors and how to Encrypting Connection String.
- Architecture of Config File
- config and Web.Config
- AppSettings
- web Section
- Exception Handling
- Location Section
- Encrypting ConnectiongString
State Management Techniques
You will learn about the Sharing data across requests by same client/user using Cookies and Session management.
- Cookies
- Managing Cookies in ASP.NET MVC Application
- Authentication in Cookies
- Cookie Dictionary
- Sessions Management
- Sharing data between clients using static class
Web Caching
You will learn about the Output Caching and Data Caching.
CRUD operations using Entity Framework
You will learn about the CRUD operations using LINQ and Entity Framework,Repository patterns, Generic Repository and Understanding about Depedency injection.
- Basic CRUD Operations using Scaffold Templates
- Separation of work using BO Classes
- Using Single Database Context Object across all Business Objects
- Writing Generic Class / Repository
- Caching in Repository
- Custom Controller Factory and Dependency Injection.
Authentication and Authorization
In this module, you will learn about the Types of Authentication, how to use Windows authentication, how to use Forms authentication, encrypting password in config file and Role-Based Authentication.
- Overview of Authentication and Authorization
- Types of Authentication
- [Authorize] and [AllowAnonymous] attributes
- Windows Authentication Implementation
- Forms Authentication Implementation
- Roles Based Security
ASP.NET Identities
You will learn about the Single Sign On using Facebook & Google,Two Factor Authentication, Email Confirmation and Role Management.
- NET Identity Introduction
- OWIN and Katana
- Customizing Template Generated Code
- Extending Identity Model and using Integer Key instead of String Key
- OAuth and Social Authentication
- Code MVC Application with Facebook, Twitter, LinkedIn and Google OAuth2 Sign-on
- Implementing Email Confirmation
- Two Factor Authentication
- User and Role Management
URL Routing
You will learn about the Mapping URL to Controller Action Method,Applying Constraints and Attribute Routing in MVC 5.
- Overview
- Mapping URL to Controller Action Method
- Applying Constraints on Route parameters
- Resolving Namespace Ambiguity Ignoring Routes
- Attribute Routing improvements in MVC 5
Working with Areas
You will learn about the concept of Areas,how to add an area for MVC project, Linking between areas.
- Understanding Areas
- Adding Areas
- Registering Areas
- Linking between Areas
- JQuery with Kendo Demo
- MVC and Kendo Data