ASP.NET由于采用了管道式设计,具有很好的扩展性,而整个ASP.NET MVC应用框架就是通过扩展ASP.NET实现的。通过上面对ASP.NET管道设计的介绍,我们知道ASP.NET的扩展点只要体现在HttpMoudle和HttpHandler这两个核心组建之上,实际上整个ASP.NET MVC框架就是通过自定义的HttpMoudle(UrlRoutingModule)和HttpHandler(MvcHandler)实现的。为了上读者从整体上把握ASP.NET MVC的工作机制,接下来我按照其原理通过一些自定义组件来模拟ASP.NET MVC的运行原理,我们也可以将此视为一个“迷你版”的ASP.NET MVC。值得一提的是,为了让读者根据该实例从真正的ASP.NET MVC中找到对应的组件,我完全采用了与ASP.NET MVC一致的类型命名方式。[源代码从这里下载]

在正式介绍我们自己创建 的“迷你版”ASP.NET MVC的实现原理之前,我们不妨来看看建立在该框架之上的Web应用如何实现。我们通过Visual Studio创建一个空的ASP.NET Web应用(注意不是ASP.NET MVC应用),我们不会引用System.Web.Mvc.dll这个程序集,所以你在接下来的程序中看到的定义在该程序集中的同名类型都是我们自行定义的。

我们首先定义了如下一个SimpleModel类型,它表示最终需要绑定到View上的数据。简单起见,同时也为了验证针对Controller和Action的解析机制,SimpleModel定义的两个属性分别表示当前请求的目标Controller和Action。

class SimpleModel
   2: {
string Controller { get; set; }
string Action { get; set; }
   5: }

相关文章:

  • 2021-07-14
  • 2022-12-23
  • 2022-01-14
  • 2021-09-14
  • 2021-08-31
  • 2021-06-26
猜你喜欢
  • 2022-01-14
  • 2022-01-19
  • 2021-07-13
  • 2021-11-01
  • 2022-02-09
  • 2021-12-12
  • 2021-08-21
相关资源
相似解决方案