深入理解MVC模式及其相关技术
1. MVC模式概述
MVC(Model-View-Controller)模式自20世纪70年代末开始使用,源于施乐PARC的Smalltalk项目,最初用于组织早期的GUI应用程序。Ruby on Rails让MVC模式重新受到主流关注,随后许多MVC框架相继出现,ASP.NET MVC就是其中之一。
MVC模式将应用程序至少分为三个部分:
- 模型(Models) :包含或表示用户处理的数据。可以是简单的视图模型,仅用于在视图和控制器之间传输数据;也可以是领域模型,包含业务领域的数据以及操作、转换和处理数据的规则。
- 视图(Views) :用于将模型的一部分渲染为用户界面。
- 控制器(Controllers) :处理传入的请求,对模型执行操作,并选择要呈现给用户的视图。
每个部分都有明确的职责,这种分离关注点的设计使得应用程序更易于维护和扩展。
2. 领域模型的理解
领域模型是MVC应用程序中最重要的部分。通过识别应用程序必须支持的行业或活动中的现实世界实体、操作和规则来创建领域模型,通常用C#类型(类、结构体等)表示。领域模型通常是持久的,关系数据库是最常见的选择。
例如,在一个拍卖应用程序的领域模型中,包含一组成员(Members),每个成员持有一组出价(Bids),每个出价对应一个物品(Item),每个物品可以有来自不同成员的多个出价。
为了更好地实现领域模型,可以采用通用语言(Ubiquitous Langu