ASP.NET设计形式读书笔记(3)-FrontController模式

ASP.NET设计模式读书笔记(3)---FrontController模式

FrontController将所有的业务功能和配套的基础关注点(比如授权、安全及视图呈现)集中化。

该模式执行流程如下:

 


ASP.NET设计形式读书笔记(3)-FrontController模式
 
ASP.NET设计形式读书笔记(3)-FrontController模式

 

书中第一种实现方式是以Command(命令模式)实现,主要类结构如下图所示:


ASP.NET设计形式读书笔记(3)-FrontController模式

最后采用一个CustomHTTPHandler:IHttpHandler来拦截最被的HTTP请求,使其能够正确处理自定义的路径。 如下:

public class CustomHTTPHandler : IHttpHandler 
    {        
        public void ProcessRequest(HttpContext context)
        {
            ObjectFactory.GetInstance<FrontController>()
                .handle(ObjectFactory.GetInstance<IWebRequestFactory>().CreateFrom(context));
        }

        public bool IsReusable
        {
            get { return true; }
        }     
    }