Course Description
Prior .NET web application development experience and familiarity with Object-Oriented Programming concepts is assumed. Some experience with HTML and JavaScript is also expected. Experience developing ASP.NET MVC Training applications with Web Forms would be beneficial.
Course – Topics
Introduction to ASP.NET MVC 6
- Introduction to MVC 6
- NET Web Forms (vs) ASP.NET MVC
- Advantages and disadvantages of each
- Determining when-to-use which one
- List of Versions of ASP.NET MVC
- Differences between versions of ASP.NET MVC
- Overview of installing ASP.NET MVC in various versions of Visual Studio
- MVC Architecture
- What is MVC?
- Architecture Explanation
- What is Controller and action method
- What is View
- What is Model
- Request Flow in ASP.NET MVC
Getting started with MVC Core
- New Project in Visual Studio
- Overview of Folders and files of MVC project
Controllers
- Introduction to Controllers
- Creating Controllers and Actions
- Calling action methods thru the browser
- Returning from action methods
- Parameters in Action methods
- ActionLink
- URL Routing
- Overview
- The need of URL Routing
- Parameters in URL
- Default Parameter Values
- Parameters with Constraints
- Literals in URL
Views (Razor)
- Introduction to Views (Razor)
- ActionResult and ViewResult
- Returning a view
- Creating a Simple Razor View
- Intermingling Code and Markup in Razor Views
- View Bag / View Data / Temp Data
- Shared Views
- ASPX View Engine (vs) Razor
LayoutViews
- Introduction to LayoutViews
- The need of layout views
- cshtml
- Creating custom layout views
- Layout Views with Sections
- RenderSection()
- cshtml
- Overriding the _ViewStart.cshtml
Partial Views
- Partial Views
- RenderPartial()
Models
- Introduction to Models
- Need of models
- Creating models using ‘CodeFirst approach’
Entity Framework in MVC
- Introduction to Entity Framework
- Need of Entity Framework
- Creating DbContext and DbSet
- Configuring connection string
Scaffold Templates in MVC
- Introduction to scaffold Templates in MVC
- Need of Scaffolding
- Creating controllers and views using scaffold
- Strongly typed views
- Understanding Index, Details, Create, Edit, Delete action methods and views
HTML Helpers
- Introduction to HTML helpers
- DisplayNameFor( )
- DisplayFor( )
- BeginForm( )
- LabelFor()
- EditorFor( )
- ValidationMessageFor( )
- RadioButtonFor( )
- DropDownListFor( )
- ListBoxFor( )
- CheckBoxFor( )
- AntiForgeryToken()
- Code First Migrations
Action Filters
- Introduction to action filters
- [HttpPost]
- [HttpGet]
- [ValidateAntiForgeryToken]
- [OutputCache]
- [HandleError]
- [NonAction]
- [ActionName]
Bundles and Minification
- Introduction to Bundles and minification
- Understanding BundleConfig.cs
- ScriptBundle (vs) StyleBundle
- Importing a ScriptBundle and StyleBundle
- Creating and consuming custom bundles
Validations
- Introduction to Validations
- Model level validations (vs) View level validations
- Importing jQuery Validation Plug in
- [Required]
- [RegularExpression]
- [Range]
- [StringLength]
- [Compare]
- [Remote]
- IsValid
Data Annotations
- [Display]
- [Datatype]
- [DisplayFormat]
- [ScaffoldColumn]
jQuery in MVC
- Introduction to jQuery in MVC
- Need of jQuery in MVC
- Importing/updating jquery plug in
- Demos
jQuery AJAX in MVC
- Need of jQuery-AJAX in MVC
- Demos on jQuery-AJAX (with json) in MVC with database handling
- Intro to jQGrid
Web API
- Introduction to Web API
- WCF REST (vs) Web API
- Understanding HTTP methods(GET, POST, PUT, DELETE)
- Creating API controller
- API configuration
- Calling Web API from jQuery
- Demo: CRUD operations using jQuery AJAX with Web API
Security in MVC
- Forms based security with [Authorise]
- Windows based security
What’s new in MVC Core
- Web API 2
- Overview of Facebook Application
- OWIN Abstraction
- Inbuilt Support for Dependency Injection
- SIGNAL R 3
- Web API 3
Repository Layer and Service Layer
- Introduction to Repository Layer and Service Layer
- MVC Architecture with both layers
- Demos
Dependency Injection
- Problems in accessing repository layer / service layer directly in controller
- What is Dependency Injection
- Installing ‘Unity’ plug in
- Configuring Unity
- Construction injection and property injection using interface
Consuming WCF in MVC
- Introduction to Consuming WCF in MVC
- Demos how to consume WCF in MVC
Database – First approach in MVC
- Introduction to Database-First approach in MVC
- Demos on ‘Database-First’ approach
Areas in MVC
- Introduction to areas in MVC
- Demos on areas
Mobile Web Apps using MVC
- Introduction to jQuery Mobile
- Mobile Application’ project template
- Overview of Customizing jQuery Mobile
- Deployment
- Configuring IIS
- Publishing MVC web applications to local IIS
Angular JS Integration
- What is AngularJS
- Advantages
- Getting started
- MVVM and MVC Architecture
- What is Model, View, ViewModel
- Creating view model
- data-bind
- Observable properties
- Subscribe
- Working with Directives, Services, Filters, Functions
Single Page Application (SPA)
- What is SPA
- Need of SPA
- Getting started
- Angular JS with API
- Reading and posting data