基於Attribute的Web API路由設定

2022-02-28 16:50:17 字數 1420 閱讀 6586

路由對於mvc應用程式來說都是至關重要的乙個部門,不管是asp.net mvc或者ruby on rails(當然還有其它的,我只熟悉這兩個:) )  asp.net mvc自帶的路由配置是在global.asax檔案中,這裡給大家介紹乙個基於屬性的路由配置工具:attributerouting,它不僅可以適用於asp.net mvc也適用於asp.net web api專案。我們以asp.net web api專案為例,說明下它的適用。

首先安裝nuget包:

pm> install-package attributerouting.webapi
如果之前有安裝過更高版本的包,需要先解除安裝。解除安裝命令為:pm> uninstall-package -f attributerouting.webapi

然後開始程式:

首先建立乙個urlcontroller,新增如下的命名空間:

1.首先是基本的http請求方式路由定義:

上面的[get("links")]

瀏覽器中訪問結果如下:

使用attributerouting最大的好處是可以直接定義多個屬性作為乙個action的路由,如下圖:

訪問結果:

同時也可以使用[post("postlinks")],這樣就只能通過post方式來請求web api。

2.路由約束

有時候需要設定一些規則來約束某個路由是不可以訪問的,這時候就需要用到路由約束,這裡也可以使用attributerouting來設定路由約束:

輸入的id必須是int並且在1~3之間,如果輸入別的int值,會找不到路由:

當然也可以通過正規表示式來設定路由:

上面的正則表示e這個引數必須是大寫字母+小寫字母+數字組成。

基於Attribute的Web API路由設定

路由對於mvc應用程式來說都是至關重要的乙個部門,不管是asp.net mvc或者ruby on rails 當然還有其它的,我只熟悉這兩個 asp.net mvc自帶的路由配置是在global.asax檔案中,這裡給大家介紹乙個基於屬性的路由配置工具 attributerouting,它不僅可以適...

《基於WEB程式設計》

三 選擇題ii 每題5分,共20分 1.下述 在使用者改變下拉列表框選擇時,會呼叫 方法 asp listitem第1項 asp listitem第2項 asp listitem第3項 a.listitem b.dropdownlist1 selectedindexchanged c.server ...

基於HttpListener的web伺服器

前面兩篇文章分別介紹了基於原始socket的web伺服器和基於tcplistener的web伺服器,本篇文章將繼續介紹另外一種基於httplistener的。httplistener進一步的簡化了http協議的監聽,僅需通過字串的方法提供監聽的位址和埠號以及虛擬路徑,就可以開始監聽工作了。設定字首,...