Tôi đã có những hành động sau đây trên một ApiController:ASP.NET Web Api: Tài nguyên yêu cầu không hỗ trợ http phương pháp 'GET'
public string Something()
{
return "value";
}
Và tôi đã cấu hình các tuyến đường của tôi như sau:
routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
Trong các phiên bản beta, điều này chỉ làm việc tốt, nhưng tôi chỉ cập nhật cho phiên bản Release Candidate mới nhất và bây giờ tôi đang nhìn thấy lỗi trên các cuộc gọi như thế này:
Th e tài nguyên được yêu cầu không hỗ trợ phương thức http 'GET'.
Tại sao tính năng này không hoạt động nữa?
(Tôi cho rằng tôi có thể thoát khỏi {action} và chỉ cần thực hiện một tấn điều khiển, nhưng mà cảm thấy lộn xộn.)
chỉ gặp phải điều này, cảm ơn bạn đã khắc phục, nhưng tò mò, tại sao tôi phải làm điều này với phương pháp tùy chỉnh của mình, nhưng không phải là phương pháp "Nhận" mặc định? Tôi có một phương thức Get được tạo bởi mẫu cho bộ điều khiển, nhưng nó không được trang trí. điều này chỉ là theo quy ước vì tên Get? – SelAromDotNet
@Josh: Vâng! Khi tên của phương thức hành động bắt đầu bằng "Get ...", bạn không phải đánh dấu nó là phương thức GET. Đọc thêm tại đây: http://www.asp.net/web-api/overview/web-api-routing-and-actions/routing-in-aspnet-web-api –
Tôi đã làm như đề xuất trong câu trả lời nhưng bây giờ cả hai các cuộc gọi của tôi, Nhận và Đăng, đang được chuyển hướng đến Nhận hành động. Bất kỳ giúp đỡ xin vui lòng? –