我有上ApiController了以下行動:的ASP.NET Web API:請求的資源不支持HTTP方法「GET」
public string Something()
{
return "value";
}
而且我已經配置了我的路線如下:
routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
在測試版,這工作得很好,但我只更新到最新的發佈候選,現在我看到的錯誤上的調用是這樣的:
釷e請求的資源不支持http方法'GET'。
爲什麼不再工作?
(我想我可以擺脫{行動},只是做一噸的控制器,但感覺凌亂。)
剛剛遇到了這個,感謝修復,但好奇,爲什麼我必須用我的自定義方法做到這一點,但不是默認的「Get」方法?我有一個由控制器模板創建的Get方法,但沒有進行裝飾。這是否僅僅是因爲名字Get? – SelAromDotNet
@Josh:是的!當操作方法的名稱以「Get ...」開頭時,您不必將其標記爲GET方法。在這裏閱讀更多:http://www.asp.net/web-api/overview/web-api-routing-and-actions/routing-in-aspnet-web-api –
我按照答案中的建議做了,但現在我的電話Get和Post被重定向到Get Action。請幫忙嗎? –