在《注冊(cè)URL模式與HttpHandler的映射關(guān)系》演示的實(shí)例中,我們總是利用一個(gè)RouteBuilder對(duì)象來為RouterMiddleware中間件創(chuàng)建所需的Router對(duì)象,接下來我們就著重來介紹這個(gè)對(duì)象。RouteBuilder是我們對(duì)所有實(shí)現(xiàn)了IRouteBuilder接口的所有類型以及對(duì)應(yīng)對(duì)象的統(tǒng)稱。[本文已經(jīng)同步到《ASP.NET Core框架揭秘》之中]
目錄
一、RouteBuilder
二、RouteCollection
三、多個(gè)Route共享同一個(gè)Handler
四、每個(gè)Route具有獨(dú)立的Handler
五、擴(kuò)展方法MapVerb
一、RouteBuilder
如下面的代碼片段所示,RouteBuilder對(duì)Router對(duì)象的創(chuàng)建體現(xiàn)在它的Build方法上。除此之外,IRouteBuilder接口還定義了一系列屬性,我們可以利用它們得到用來注冊(cè)中間件的ApplicationBuilder和用來提供服務(wù)的ServiceProvider。我們可以將多個(gè)Router注冊(cè)到RouteBuilder上,這些注冊(cè)的Router保存在Routes(不是Routers)屬性上,而DefaultHandler屬性返回一個(gè)默認(rèn)的Router。
1: public interface IRouteBuilder
&nb