In this course, students will learn to develop advanced ASP.NET MVC applications using .NET Framework tools and technologies. The focus will be on coding activities that enhance the performance and scalability of a web application. ASP.NET MVC will be introduced and compared with Web Forms so that students know when each should/could be used. This course will also prepare the students for exam 70-486.
After completing this course, students will be able to:
- Describe the Microsoft Web Technologies stack and select an appropriate technology to use to develop any given application.
- Design the architecture and implementation of a web application that will meet a set of functional requirements, user interface requirements, and address business models.
- Create MVC Models and write code that implements business logic within Model methods, properties, and events.
- Add Controllers to an MVC Application to manage user interaction, update models, and select and return Views.
- Create Views in an MVC application that display and edit data and interact with Models and Controllers.
- Run unit tests and debugging tools against a web application in Visual Studio and configure an application for troubleshooting.
- Develop a web application that uses the ASP.NET routing engine to present friendly URLs and a logical navigation hierarchy to users.
- Implement a consistent look and feel, including corporate branding, across an entire MVC web application.
- Use partial page updates and caching to reduce the network bandwidth used by an application and accelerate responses to user requests.
- Implement a complete membership system in an MVC web application.
- Build an MVC application that resists malicious attacks and persists information about users and preferences.
- Describe how to write a Microsoft Azure web service and call it from and MVC application.
- Describe what a Web API is and why developers might add a Web API to an application.
- Modify the way browser requests are handled by an MVC application.
- Describe how to package and deploy an ASP.NET MVC web application from a development computer to a web server for staging or production.
This course is intended for professional web developers who use Microsoft Visual Studio in an individual-based or team-based, small-sized to a large development environment. Candidates for this course are interested in developing advanced web applications and want to manage the rendered HTML comprehensively. They want to create websites that separate the user interface, data access, and application logic.
Before attending this course, students must have a minimum of two to three years of experience developing web-based applications by using Microsoft Visual Studio and Microsoft ASP.NET, proficiency in using the .NET Framework, and some familiarity with the C# language.
Program Duration: 40 hours
Program Language: English / Arabic
Location: EPSILON TRAINING CENTER | Head Office
Participants will be granted a completion certificate from Epsilon Training Institute, USA if they attend a minimum of 80 percent of the direct contact hours of the Program and after fulfilling program requirements (passing both Final Exam and Project to obtain the Certificate)
Delegates, Anonymous Methods, and Lambdas
Understand four ways to use delegates
• Anonymous methods with the delegate keyword
• Lambda shorthand notation
• Using Lambdas in ASP.NET MVC 5
Extension Methods, Anonymous Types, and Dynamic Types
Understanding extension methods
• Using extension methods in ASP.NET MVC 5
• Understanding Anonymous Types
• Using Anonymous Types in ASP.NET MVC 5
• Understanding the dynamic keyword
• Using dynamic Types in ASP.NET MVC 5
• Introduction to the Task Parallel Library (TPL)
• Using the TPL in ASP.NET MVC 5
Introduction to LINQ
Understand the motivation behind LINQ
• Visual Studio LINQ support
• Debugging LINQ query expressions
• Work with query operators and query expressions
• Program with LINQ to Objects
• Understand deferred and immediate execution
• Know the role of the System.Linq.Enumerable type
• Know the role of the System.Func delegate type
• Understanding the query operators /delegates/lambda relationship
Introduction to ASP.NET MVC 5
ASP and ASP.NET WebForms
• One ASP.NET in VS 2013
• Web Standards and REST
• The MVC Design Pattern
• Unit Testing
• Managing Dependencies
ASP.NET MVC Architecture
• Controllers, Models, and Views
• URL Routing
• Controller Actions
• Razor View Engine
Defining the Model
• Repository Pattern
• Object Relational Mapping (ORM)
• Entity Framework
• Using an IoC Container
Routes and URLs
Introduction to Routing
• Defining Routes
• Route Evaluation
• The Controller Factory
• Exempting URLs
• Constructing Outgoing URLs
• Unit Testing Routes
Controllers and Actions
IController, ControllerBase, and Controller
• Defining Actions
• Action Selectors
• Action Filters
• HTTP Verbs
• HttpContext and RouteData
• Maintaining Testability
• Returning Data with ActionResult
• Parameters and the Model Binder
• Asynchronous Action Methods
• Templates and Scaffolding
• Bootstrap Framework
• Razor Syntax
• ViewData and ViewBag
• Strongly-Typed Views
• Layout Pages
• Custom Sections
• Partial Views
• Child Actions
• Using a ViewModel Object
• Strongly-Typed Helpers
• Creating Custom Helpers
• Declarative Helpers
• Validation HTML Helpers
• Client Side Validation
Authentication and Authorization
• Using Windows Authentication
• Building a Custom Account Controller
• Configuring Forms Authentication
• Using the Authorize Attribute
• Authentication Filters
• OAuth2 and OpenID
Controller Actions for Ajax
• Ajax Helpers
• Unobtrusive Ajax
• Ajax with jQuery
Web API 2
Using HTTP as an Application Protocol
• Content Negotiation
• Attribute Routing
• Cross Origin Resource Sharing (CORS)
• Open Web Interface for .NET (OWIN)
• Web API OData
Building a Rich Client-Side UI
• jQuery Templates
CSS 3 Media Queries
• Responsive vs. Adaptive
• Mobile-Specific Views
• Using a View Switcher
Customizing and Extending ASP.NET MVC
ASP.NET MVC Pipeline
• Advanced Routing
• Custom Global Filters
• Customizing MVC Code Templates
• Creating a Custom Controller Factory
• Configuration Options
|Delegates, Anonymous Methods, and Lambdas|
|Extension Methods, Anonymous Types, and Dynamic Types|
|Introduction to LINQ|
|Introduction to ASP.NET MVC 5|
|ASP.NET MVC Architecture|
|Defining the Model|
|Routes and URLs|
|Controllers and Actions|
|Authentication and Authorization|
|Web API 2|
|Building a Rich Client-Side UI|
|Customizing and Extending ASP.NET MVC|