Course Fee – 25k , Current discounted fee - 21k (Limited offer)
1. Why we need MVC?
2. Why we need Asp.net MVC – Problem with Code behind.
3. How MVC Works –
1. Understand the architecture?
2. How request is processed?
3. Request in Web Forms vs Request in MVC
4. How Requests are mapped to Controller and Action
1. Application_Start function
2. Examining Default route and URL pattern
3. What is that “Id” in Default route
4. Query strings vs Id
5. Nullable parameters in URL
6. Creating custom routes
7. What is IgnoreRoutes – Ignore requests for axd files (example tracing – enable and check)
(Asp.net concepts will be applicable for MVC also)
5. Simple MVC Application
1. Return Simple string from Controller
( How it is different from WebForm Simple string display)
2. What you can return from Action method
3. What happen if you return any object
4. Working with Views – Return a simple View
5. ActionResult vs View() function
6. Why controller action method return ActionResult
6. Razor View Engine
7. Pass data from controller to view using ViewData and ViewBag
1. ViewData-Dictionary of objects that are stored and retrieved using string as keys
2. Viewbag – uses dynamic feature in c# 4.0. It allows an object to have properties dynamically added to it.
3. Working with ViewData and Viewbag together
(Show looping in view)
4. HTML Injections
8. Problems with ViewBag and View Data and what is best practice
1. No Compile error
2. Performance – Casting is required
9. Models in MVC
1. What is Model
2. What It contains
3. Where does Database logic resides
4. Create a strongly typed view and check first line(top directive)
· Strongly typed view of simple objects
· Strongly typed view of collection objects
10. @model in Razor
11. Simple Example of Data access in Model using EF
12. Working with input controls in views – Textbox,DropDown
13. Passing data from View to Controller -Working with post request
1. Request.Form
2. FormCollection
3. Getting posted values as parameters (Model Binder map control values to paramets in action method and for
that it uses Name of properties and Name of controls)
(Order of the parameter does not matter)
4. Get Posted values as Model
14. Using HTMLHelper - HTML helper is just a method that returns a string. – used to render html content on view
1. Textbox,Label,Password, TextArea,Hidden,dropdown,DisplayFor
2. Specialty when we used HTMLHelpers.
3. ModelState.Clear and ModelState.Remove
Model cant contain invalid values
4. Control vs ControlFor
5. How to change values of some properties
6. Creating own htmlhelper
7. DisplayName Attribute
15. HttpPost and Httpget attribute – Only Respond to particular request
16. UpdateModel vs TryUpdateModel – One throw exception if validation fails
17. Inlcuding and excluding properties from Model binding
1. Using Bind attribute in post action parameter
2. Using Interface – (UpdateModel Generic function- Use interface)
3. Using UpdateModel overload
4. Using Get Http Methods for deleting data – Search engine issue
18. What is ActionName Attribute
19. Creating hyperlinks using HTMLHelper – Html.actionlink
1. Normal redirect
2. Pass Values (using route values)
20. Some Action results – specific to transfer
1. Return view - Server.Transfer
2. return view(“name”) - Server.Transfer
3. redirectToAction(“name”) – Response.Redirect – Uses route table to generate the correct url - cause the browser to receive a 302
4. Redirect – Same as RedirectToAction but manual construction of url
5. RedirectToRoute - look up the specifies route into the Route table that is is defined in global.asax and then redirect to that controller/action defined in that route.
(same as redirectToAction)
6. Redirect and redirect permanent
21. What is tempdata
22. Model validation
1. ModelState.valid
2. DataAnnotations – Required attribute
3. HtmlHeper Validation controls
4. Custom data annotation
· ValidationAttribute
· ViewModel
· IValidatableObject
5. Disable some validations ModelState["DependentProperty"].Errors.Clear();
6. Clientside validation
7. Disable Client side validation for some button
8. Obstructive ….
23. Creating custom Helper Methods
24. Controller Folder vs Shared Folder
25. Partial Views - reuse a view
26. Display and Editor Templates
1. Display vs DisplatyFor vs DisplayForModel.
2. Editor vs EditorFor vs EditorForModel
3. DisplayTemplates and EditorTemplates
27. Action method will pick up what when you have all four , .aspx, .ascx, .cshtml and.vbhtml [Look at the error]
28. Partial and render partial
29. Action vs RenderAction
30. Is there more action results?
1. ContentResult
2. EmptyResult - Async Controller
3. FileResult
4. HttpStatusCodeResut
5. JavascriptResult
6. JsonResult
7. RedirectResult
8. RedirectToRouteResult
9. ViewResultBase
31. Master Page
1. MasterPages in ASPX
2. Layouts in RAZOR
3. MasterPages vs Layouts
4. Nested Master pages
5. Nested Layouts
6. _Viewstart
32. Exception Handling in MVC
1. Custom Error in Web.config
2. Handle error – Global level
3. Handle error – controller/action level
4. HTTP 404
5. Access errorInfo in ErrorFile
6. Different Error Page for Different error
7. Limitations of HandleError –
· No logging,
· For Ajax Call error return same view
· Catch only 500
· No outside controller error handling
8. Extend HandleError
33. What is Unit Testing
34. Simple example of MOQ DLL
35. Testing routes
36. Testing controllers
37. Filters
1. Authorization Filters
2. Action Filters – Allow us to add Pre or post processing logic to action methods
3. Result Filter – Allow us to add Pre or Post processing logic before and after execution of a view result
4. ExceptionFiler – Allow us error handling logic occurred during execution of action
38. Webpage API
39. MVC with Ajax
40. MVC JQuery
41. Areas
42. Deployment in IIS
43. Windows authentication- video
44. Forms authentication
1. How Form Authentication works
2. Login Page
3. Allow Anonymous attribute
4. Creating cookie
45. Threading, TPL and Async await Simple sample
46. Asynchronous controllers
47. Entity framework with MVC
48. MVC 4 – Bundling and Minimization
49. Discussion on repository Pattern
50. Discussion on ViewModel in MVC
51.Custom Model Binders