From b39e33e2d8d4e575b679da00c0822a6d30fa3ddd Mon Sep 17 00:00:00 2001 From: jason-zhu Date: Sun, 22 Oct 2023 12:15:53 +1100 Subject: [PATCH] Up to 2023-10-22 --- chap10_nuget.md | 8 +++++ chap11_dependency_injection.md | 5 +++ chap12_unit_testing.md | 6 ++++ chap13_extending_mvc.md | 6 ++++ chap14_advanced_topics.md | 8 +++++ chap2_controllers.md | 13 +++++++ chap3_views.md | 13 +++++++ chap5_forms_and_html_helpers.md | 47 +++++++++++++++++++++++++ chap6_data_annotation_and_validation.md | 6 ++++ chap7_securing_your_application.md | 7 ++++ chap8_ajax.md | 7 ++++ chap9_routing.md | 11 ++++++ data.csv | 0 13 files changed, 137 insertions(+) create mode 100644 chap10_nuget.md create mode 100644 chap11_dependency_injection.md create mode 100644 chap12_unit_testing.md create mode 100644 chap13_extending_mvc.md create mode 100644 chap14_advanced_topics.md create mode 100644 chap2_controllers.md create mode 100644 chap3_views.md create mode 100644 chap5_forms_and_html_helpers.md create mode 100644 chap6_data_annotation_and_validation.md create mode 100644 chap7_securing_your_application.md create mode 100644 chap8_ajax.md create mode 100644 chap9_routing.md create mode 100644 data.csv diff --git a/chap10_nuget.md b/chap10_nuget.md new file mode 100644 index 0000000..e5a53a4 --- /dev/null +++ b/chap10_nuget.md @@ -0,0 +1,8 @@ +# Chapter 10: NuGet + +Topics covered in this chapter (May not be summarized): +* Introduction to NuGet +* Installing NuGet +* Installing Packages +* Creating Packages +* Publishing Packages \ No newline at end of file diff --git a/chap11_dependency_injection.md b/chap11_dependency_injection.md new file mode 100644 index 0000000..4cbb043 --- /dev/null +++ b/chap11_dependency_injection.md @@ -0,0 +1,5 @@ +# Chapter 11: Dependency Injection + +Topics covered in this chapter (May not be summarized): +* All about software design patterns +* How to use the dependecny resolver \ No newline at end of file diff --git a/chap12_unit_testing.md b/chap12_unit_testing.md new file mode 100644 index 0000000..0133f45 --- /dev/null +++ b/chap12_unit_testing.md @@ -0,0 +1,6 @@ +# Chapter 12: Unit Testing + +Topics covered in this chapter (May not be summarized): +* Understanding unit testing and Test-Driven-development +* Building a unit test project +* Good adivce for unit testing your ASP.NET MVC application \ No newline at end of file diff --git a/chap13_extending_mvc.md b/chap13_extending_mvc.md new file mode 100644 index 0000000..ecf35a8 --- /dev/null +++ b/chap13_extending_mvc.md @@ -0,0 +1,6 @@ +# Chapter 13: Extending MVC + +Topics covered in this chapter (May not be summarized): +* How to extend Models +* How to extend Views +* How to extend Controllers \ No newline at end of file diff --git a/chap14_advanced_topics.md b/chap14_advanced_topics.md new file mode 100644 index 0000000..ddd742c --- /dev/null +++ b/chap14_advanced_topics.md @@ -0,0 +1,8 @@ +# Chapter 14: Advanced Topics + +Topics covered in this chapter (May not be summarized): +* Advanced Razor +* Advanced Scaffolding +* Advanced Routing +* Advanced Templating +* Advanced Controllers \ No newline at end of file diff --git a/chap2_controllers.md b/chap2_controllers.md new file mode 100644 index 0000000..73a9340 --- /dev/null +++ b/chap2_controllers.md @@ -0,0 +1,13 @@ +# Chapter 2: Controllers + +Topic in this chapter: (May not summarize) +* The controller's role +* A brief history of controllers +* Sample application: The MVC Music Store +* Controller basics + +## The Controller's Role + + + +## Controller Basics \ No newline at end of file diff --git a/chap3_views.md b/chap3_views.md new file mode 100644 index 0000000..d3bdb41 --- /dev/null +++ b/chap3_views.md @@ -0,0 +1,13 @@ +# Chapter 3: Views + +Topic in this chapter: (May not summarize) +* The purpose of Views +* How to specify a View +* All about strongly typed Views +* Understanding View Models +* How to add a View +* Using Razor +* How to specify a Partial View +* Understanding the View Engine + +## What a View Does diff --git a/chap5_forms_and_html_helpers.md b/chap5_forms_and_html_helpers.md new file mode 100644 index 0000000..ff3c73d --- /dev/null +++ b/chap5_forms_and_html_helpers.md @@ -0,0 +1,47 @@ +# Chapter 5: Forms and HTML Helpers + +Topic in this chapter: (May not be summarized) +* Understanding forms +* How to make HTML helpers work for you +* Editing and inputting helpers +* Displaying and rendering helpers + +HTML helpers requires coordination between a view and the runtim. + +## Using Forms + +Before understanding HTML helper, first get familiar with HTML `form` tag. + +### The Action and the Method + +A form is a container for one or more different input elements, e.g.: +* buttons +* checkboxs +* text inputs, etc. + +How form submit user entered information to server: +* through **`action` and `method` attributes of a `form` tag** +* `action` attribute tell browser where to send information, hence normally contains URL (relative or absolute) +* `method` attribute tell browser use `GET` (default) or `POST` requests. +* When a user submits a form using an HTTP GET request, **the browser takes the input names and values inside the form and puts them in query string**. + +e.g. HTML form tag transform to URL + +```html +
+ + +
+``` + +to `http://www.bing.com/search?q=love` + +Details of HTML form is available in [w3schools](https://www.w3schools.com/html/html_forms.asp) + +### To GET or To POST + +Difference btw GET and POST: +* `GET` request: browser place input values into query string +* `POST` request: browser place input values inside the body of the HTTP request instead. + +Web app generally use GET requests for reads and POST requests for writes. \ No newline at end of file diff --git a/chap6_data_annotation_and_validation.md b/chap6_data_annotation_and_validation.md new file mode 100644 index 0000000..0f24ff6 --- /dev/null +++ b/chap6_data_annotation_and_validation.md @@ -0,0 +1,6 @@ +# Chapter 6. Data Annotations and Validation + +Topic covered in this chapter (May not be summarized) +* Using data annotations for validation +* How to create your own validation logic +* Using model metadata annotations \ No newline at end of file diff --git a/chap7_securing_your_application.md b/chap7_securing_your_application.md new file mode 100644 index 0000000..fb086d7 --- /dev/null +++ b/chap7_securing_your_application.md @@ -0,0 +1,7 @@ +# Chapter 7: Securing Your Application + +Topic covered in this chapter (May not be summarized): +* Requiring Login with Authorize Attribute +* Requiring role membership using the Authorize Attribute +* Using security vectors in Web Application +* Coding defensively \ No newline at end of file diff --git a/chap8_ajax.md b/chap8_ajax.md new file mode 100644 index 0000000..9729aed --- /dev/null +++ b/chap8_ajax.md @@ -0,0 +1,7 @@ +# Chapter 8: AJAX + +Topic covered in this chapter (May not be summarized): +* Everything you want to know about jQuery +* Using AJAX Helpers +* Understanding Client Validation +* Using jQuery Plugins \ No newline at end of file diff --git a/chap9_routing.md b/chap9_routing.md new file mode 100644 index 0000000..728f4cc --- /dev/null +++ b/chap9_routing.md @@ -0,0 +1,11 @@ +# Chapter 9: Routing + +Topics covered in this chapter (May not be summarized): +* All about URLs +* Routings 101 +* A peek under the Routing hood +* A look at advanced Routing +* Routing extensibility and magic +* How to use Routing with Web Forms + +## \ No newline at end of file diff --git a/data.csv b/data.csv new file mode 100644 index 0000000..e69de29