This three-day course provides a practical hands-on introduction to developing web applications using ASP.NET MVC 4 and C#. This development framework from Microsoft emphasizes separation of concerns in the architecture and test-ability of applications. After presenting fundamentals of the technology with several examples, this course will cover the main components of Model, Controller and View in detail. The discussion of the Model incorporates modern Microsoft data access technologies, including LINQ and ADO.NET Entity Framework 5. The routing mechanism of ASP.NET MVC is covered as well. The course introduces automated unit testing of Web applications, one of the chief advantages of the new technology, security and more.

Course Duration: 3 Days
Prerequisites:

A good working knowledge of C# and the .NET Framework is required. Participants should also have a basic knowledge of ASP.NET and HTML.

Course Outline:
  • Rich Internet Applications and AJAX
    • Desktop Applications
    • Web Applications
    • Plug-Ins
    • Client-Side Scripting
    • Script Code
    • JavaScript in ASP.NET
    • Dynamic Pages
    • Efficient Page Redraws
    • AJAX
    • Google Maps
    • ASP.NET AJAX
    • ASP.NET AJAX Enhancements
    • ASP.NET AJAX Control Toolkit
    • An ASP.NET AJAX-Enabled Website
  • Using JavaScript
    • History and Standards
    • Uses of JavaScript
    • JavaScript in the Browser
    • Embedded JavaScript
    • .js Files
    • JavaScript Language
    • Variables
    • Naming Variables
    • Reserved Words
    • Types
    • Strings
    • Numbers
    • Boolean
    • Operators in JavaScript
    • Logical Operators
    • Bitwise and Assignment Operators
    • Functions
    • Scope
    • Arrays
    • Loops
    • for/in Loops in Arrays
    • Selection Structures
    • Exceptions
    • Error Object
    • Objects in JavaScript
    • Creating Your Own Objects
    • Using Your Objects
    • Dynamically Adding a Method
    • for/in Loops with Objects
  • DHTML, DOM and CSS
    • What is DHTML?
    • DHTML Components
    • XHTML
    • Document Object Model
    • Browser Objects
    • Accessing DOM Nodes
    • Using jQuery
    • CSS (Cascading Style Sheets)
    • CSS Syntax
    • Style Sheets
    • Output without the Style Sheet
    • Output with the Style Sheet
    • StyleSheet1.css
    • Using the Style Sheet
    • Output with a Different Style Sheet
    • StyleSheet2.css
    • Using a CSS Class
    • UsingCssClass Example Output
    • jQuery Library
    • jQuery and Visual Studio
    • Selectors
    • jQuery Wrapper
    • CSS Manipulation
    • Adding and Removing Class Name
    • More About Selectors
    • Animation
    • Animation Effects
    • Modifying the Document Structure
    • Remove and Append Code
    • Microsoft Content Delivery Network
  • Microsoft AJAX Client Library
    • Microsoft AJAX Components
    • AJAX Client Library
    • Using the Client Library
    • ScriptManager Control
    • Client Library Namespaces
    • Sys.Debug Tracing
    • AJAX Client Life Cycle Events
    • Enable Script Debugging
    • TraceConsole
    • Extending JavaScript Objects
    • Test Program for Array Extension
    • Test Program Code
    • Array Extensions in Client Library
    • Object-Oriented JavaScript
    • Class
    • Person Class
    • Account Class
    • Test Code
    • Namespaces
    • Inheritance
    • Book Class
    • Initialization
    • Other Functions
    • User Interface
    • Top-Level Function
    • Shortcut Methods
    • Populating a List Box
    • JavaScript in Assemblies
    • Providing a ScriptReference
    • Enhanced AcmeClass Application
  • Partial Page Rendering
    • Partial Page Rendering
    • UpdatePanel Control
    • AJAX Extensions Controls
    • Controlling Updates
    • Triggers
    • Types of Triggers
    • Server Initiated Updates
    • A Challenge
    • Triggers Again
    • Timer Control
    • PageRequestManager Class
    • Customization Scenarios
    • PageRequestManger Event Handlers
    • UpdateProgress Control
    • Factors Code
    • Canceling the Async Postback
    • Limitations and Performance Issues
  • Remote Method Calls
    • Why Remote Methods
    • Designing Remote Methods
    • A Web Service in an .asmx File
    • Registering AJAX Web Services
    • Calling AJAX Web Services
    • Running the Application
    • Handling Errors
    • Context
    • Modified Web Service
    • Using Context
    • Method Parameter
    • Using Method Parameter
    • Page Methods
    • JavaScript Object Notation
    • JSON Data Types
    • Comparing JSON and SOAP
    • SOAP Serialization
    • ScriptMethod Attribute
  • AJAX Control Toolkit
    • AJAX Control Toolkit
    • Install ACT in Visual Studio
    • ACT Controls in Visual Studio
    • Hello ACT
    • Intellisense for Properties
    • AjaxControlToolkit.dll
    • Registering AjaxControlToolkit.dll
    • Extender Controls
    • NumericUpDownExtender Control
    • Rating Control
    • Using a Style Sheet
    • MaskedEdit Control
    • PasswordStrength Control
    • Page Layout Controls
    • Tab Controls
    • Accordion Control
    • CollapsiblePanel Control
    • CollapsiblePanel Markup
    • Popup Controls
    • Modal Popup Visual Effects
    • ACT Controls and Web Services
    • DynamicPopulate
  • Application Services
    • Using ASP.NET Application Services
    • Forms Authentication
    • Authorization
    • Built-in Authentication Service
    • ASP.NET Configuration Tool
    • Login Page
    • Members Page
    • Configuration Files
    • JavaScript on Login Page
    • JavaScript on Home Page
    • Profile Properties
    • Using ASP.NET Profile Properties
    • Using Client-Side Profile Service
    • Profile JavaScript Code
    • Storing Profile Information