2013-08-04 63 views
0

我看着網頁API此pluralsight演示視頻,而他使用招用HTTP GET與控制器的語法的參數來傳遞/參數參數格式有問題的ASP.NET Web API控制器

所以他使用http://localhost:2405/api/values/5

5是他的傳球在參數。

在我的代碼,我把一切都建立正是他做了同樣的方式...用{controller}/{id}的路由模板,用的簽名控制器的方法

public string Get(string zipcode) 

我可以通過一個參數很好,http://localhost:2405/api/values?zipcode=25252,但如果我嘗試按照他的方式傳遞參數,如http://localhost:2405/api/values/25252我收到一個錯誤,說我沒有可用的操作來處理控制器上的請求。

他在做什麼正確的,我做錯了嗎?

回答

2

你需要你的路由模板更改爲{controller}/{zipcode}作爲參數的名稱必須與模板的名稱相匹配。

+0

哦,真不錯!你知道,我仍然在學習這件事,所以我認爲{id}字段是反射使用的某種關鍵字,如{controller}。非常感謝! – Cowman

+0

我同意。並不總是直覺哪些是關鍵詞,哪些是傳統的「魔術」。 –