在使用 MapRoute() 方法定義路由時,除了可以定義固定數量的 URL段 之外,
還可以定義任意數量的 URL段 。
之前定義的路由中,都是使用固定數量的 URL段
如上圖
預設時只有3個URL段
執行後如下圖
URL 段已經被成功匹配,而在URL 模式中我們定義了3個URL 段,其中{id}段是可選的。
下圖 就是具有3個URL段的URL地址
嘗試多個 URL 區段
如下圖
https://localhost:44394/Home/Index/666/CCC
CCC 是多出來的
那要怎麼可以讓第四個區段也能執行呢
如果要匹配 3 個以上、任意數量的 URL 段,可以使用星號 (*) 符號來實現。
如下圖
在{id}後面添加了{query}來表示可以匹配到任意數量的URL段,
其中代表任意數量的URL段,而query只是一個變數而已,可以任意命名。
這樣,具有4個URL段的URL地址就可以被訪問了。
如下圖
若再多幾URL 區段也都可以了
如下圖
從這個URL地址上可以看出,不論具有多少個URL段,都可以被訪問到。
值得注意的是,這樣長的URL地址,如果拆分開來,則如下所示:
https://localhost:44344/Home/Index/666/CCC/999/YYY
Controller="Home"
action="Index"
id=666
query=CCC/999/YYY
通過拆分,我們可以更清楚地理解query變數的用途。