└── README.md /README.md: -------------------------------------------------------------------------------- 1 | # Learn ASP.NET Core MVC 2 | **A course by Jess Chadwick** 3 | 4 | This is the courseware repository for the Lynda.com online video training course, Learn ASP.NET Core MVC. 5 | 6 | Here you'll be able to explore all of the completed code for each video in the course, as well as the full, complete application in its final state. 7 | 8 | To get started, here are a few things you might be interested in: 9 | 10 | * **[Course Assets](#)** 11 | * **[Full, Complete Sample Application](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/SampleApplication)** 12 | 13 | 14 | ## Source Code per video 15 | 16 | ### Chapter 1: The Basics 17 | * 2: Create a new project ([End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch01/01_02_End)) 18 | * 3: Respond to HTTP requests ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch01/01_03) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch01/01_03_End)) 19 | * 4: Leverage external dependencies ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch01/01_04) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch01/01_04_End)) 20 | * 5: Serve static files ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch01/01_05) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch01/01_05_End)) 21 | * 6: Error handling and diagnostics ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch01/01_06) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch01/01_06_End)) 22 | * 7: Using custom configuration ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch01/01_07) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch01/01_07_End)) 23 | * 8: Populating configuration settings ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch01/01_08) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch01/01_08_End)) 24 | * 9: Increase maintainability with dependency injection ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch01/01_09) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch01/01_09_End)) 25 | 26 | ### Chapter 2: The Model-View-Controller (MVC) pattern 27 | * 2: Add ASP.NET Core MVC to your ASP.NET Core application ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch02/02_02) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch02/02_02_End)) 28 | * 3: Handle requests with Controllers ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch02/02_03) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch02/02_03_End)) 29 | * 4: Pass parameters to Controller Actions ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch02/02_04) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch02/02_04_End)) 30 | * 5: Understand Routing (No code changes) 31 | * 6: Customize your application's URLs ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch02/02_06) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch02/02_06_End)) 32 | 33 | ### Chapter 3: Rendering HTML with Views 34 | * 1: Render HTML with Razor ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_01) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_01_End)) 35 | * 2: Render dynamic content with Razor ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_02) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_02_End)) 36 | * 3: Reuse shared HTML markup with Layouts ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_03) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_03_End)) 37 | * 4: Rendering sections ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_04) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_04_End)) 38 | * 5: Pass data from Controller the View ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_05) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_05_End)) 39 | * 6: Render data with strongly-typed views ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_06) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_06_End)) 40 | * 7: Reuse view markup with Partial Views ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_07) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_07_End)) 41 | * 8: Reuse view logic with injectable services ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_08) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_08_End)) 42 | * 9: Reuse application features with View Components ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_09) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_09_End)) 43 | * Challenge ([Challenge](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_Challenge) | [Solution](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch03/03_Solution)) 44 | 45 | ### Chapter 4: Working with Data 46 | * 1: Creating strongly-typed HTML forms ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch04/04_01) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch04/04_01_End)) 47 | * 2: Post form data to Controller Actions ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch04/04_02) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch04/04_02_End)) 48 | * 3: Validate form post data ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch04/04_03) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch04/04_03_End)) 49 | * 4: Use Tag Helpers to simplify your forms ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch04/04_04) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch04/04_04_End)) 50 | * 5: Represent the database using Entity Framework ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch04/04_05) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch04/04_05_End)) 51 | * 6: Write to a database using Entity Framework ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch04/04_06) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch04/04_06_End)) 52 | * 7: Read from a database using Entity Framework ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch04/04_07) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch04/04_07_End)) 53 | * Challenge ([Challenge](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch04/04_Challenge) | [Solution](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch04/04_Solution)) 54 | 55 | ### Chapter 5: Improve your user experience with AJAX with web APIs 56 | * 1: Avoid page refreshes with partial rendering ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch05/05_01) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch05/05_01_End)) 57 | * 2: Expose web API endpoints ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch05/05_02) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch05/05_02_End)) 58 | * 3: Expose data through a web API ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch05/05_03) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch05/05_03_End)) 59 | * 4: Consume a web API from the browser ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch05/05_04) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch05/05_04_End)) 60 | * Challenge ([Challenge](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch05/05_Challenge) | [Solution](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch05/05_Solution)) 61 | 62 | ### Chapter 6: Secure your application 63 | * 1: Secure controller actions from unauthorized access ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch06/06_01) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch06/06_01_End)) 64 | * 2: Add Identity Services to your application ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch06/06_02) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch06/06_02_End)) 65 | * 3: Use Identity Services to create user accounts ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch06/06_03) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch06/06_03_End)) 66 | * 4: Use Identity Services to allow users to login to your site ([Begin](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch06/06_04) | [End](https://github.com/jchadwick/LearnAspNetCoreMvc/tree/Ch06/06_04_End)) 67 | * 5: Avoid Cross-Site Request Forgery (No code changes) 68 | --------------------------------------------------------------------------------