MVC Application Design using .NET Core 2.0

各个动手实验的初始项目文件:Lab_Starter_Files.zip

概述

本课程的主要内容是 MVC 设计的概念学习与基本运用,课程内容包括:

  • MVC 概述

  • 设计 Model(模型)

  • 设计和创建 View(视图)

  • 联接 Model 与 View 的 Controller(控制器)

与其他课程不同,本课程侧重讲解 MVC 设计的概念,为你以后使用 ASP.NET Core 进行 MVC 设计打下良好的基础。

在后续课程《Program a Server-Side Application using ASP.NET Core》中,你将使用在本课程学到的 MVC 设计知识构建一个简单的网络论坛。

课程目标

讲课程目标前,先让我们回顾一下近 20 年 Web 开发的变迁历史:

  • 197x~198x - 静态网页(HTML + CSS)

  • 198x~199x - 客户端动态页面和浏览器插件(JavaScript,Flash)

  • 199x~200x - 服务端动态页面(ASP,JSP,PHP)

  • 200x~Now - 基于 MVC 模式的 Web 程序或 Web APIs(ASP.NET MVC,Spring MVC)

本课程的目标是学习如何使用微软最新的 ASP.NET Core 来开发基于 MVC 模式的 Web 程序。为实现这一目标,课程将重点关注以下两个方面:

  • MVC 模式 - 深入研究 MVC 架构模式并理解其实现

  • 实践练习 - 创建解决现实问题的 ASP.NET Core Web 程序

课程大纲

Module 0: Course introduction

  • Before you Start

  • Overview

  • Goals of This Course

  • Prerequisites

  • Platform and Tools

  • Pre-Course Survey

Module 1: Understanding MVC

  • Introduction

  • What is MVC

  • MVC and Web Development

  • Lab Configuration

  • Module 1 Labs

Module 2: Model Design

  • The Model

  • Domain Model Design

  • View Model Design

  • Data Transfer Model Design

  • Module 2 Labs

Module 3: Controllers and Actions

  • Introduction

  • Controllers and Actions

  • URL Routing

  • Advanced Model Binding

Module 4: View Design

  • Introduction

  • Using Views

  • Rendering Data

  • Using Razor Helpers

  • Advanced Views

  • Module 4 Labs

Module 5: Advanced ASP

  • Introduction

  • Requirements Analysis and Model Design

  • Implement Controllers and Views

  • Module 5 Labs

Final Module

  • Post Course Survey