下面就一些web api的一些基礎內容進行闡述,然后就web api宿主承載中的實際業(yè)務問題進行解決
HttpController
HttpController的激活是由處于消息處理管道尾端的HttpRoutingDispatcher來完成的,具體來說是HttpRoutingDispatcher利用HttpControllerDispatcher實現(xiàn)了針對目標HttpController的激活和執(zhí)行。激活目標HttpController的前提是能夠正確解析出HttpController的真實類型,而類型解析需要針對加載的程序集,所以我們需要先來了解一個用于解析程序集的對象AssembliesResolver。在ASP.NET Web API的HttpController激活系統(tǒng)中,AssembliesResolver為目標HttpController的類型解析提供候選的程序集。換句話說,候選HttpController類型的選擇范圍僅限于定義在通過AssembliesResolver提供的程序集中的所有實現(xiàn)了IHttpController接口的類型
AssembliesResolver
所有的AssembliesResolver均實現(xiàn)了IAssembliesResolver接口。根據(jù)程序反射得到如下代碼片段,根據(jù)代碼片段得知,IAssembliesResolver提供的是程序集列表
網(wǎng)友評論 |