ASP.NET Web Api 路由在 C# 中不起作用
ASP.NET Web Api Routing not working in C#
我有一个名为 GetPostalCodeXml
的 GET 端点,但它似乎从未被正确路由
该方法在一个名为 WebServiceController
的 class 中,如下所示:
public class WebServiceController : ApiController
{
[HttpGet]
[ActionName("GetPostalCodeXml")]
public HttpResponseMessage GetPostalCodeXml(string postalCode)
{
return Request.CreateResponse(HttpStatusCode.OK, "ok");
}
}
在我的 WebApiConfig.cs
文件中,以下代码是 运行:
config.Routes.MapHttpRoute(
name: "GetPostalCodeXml",
routeTemplate: "WebService/GetPostalCodeXml",
defaults: new { controller = "WebService", action = "GetPostalCodeXml" }
);
我正在尝试使用以下 URL 向端点发出 GET 请求:
http://localhost:60736/WebService/GetPostalCodeXml?postalCode=73522
但它似乎永远都行不通。
我试过用不同的方式编写路由并更改方法名称等。我还尝试阅读有关路由的 Microsoft 文档页面:https://docs.microsoft.com/en-us/aspnet/web-api/overview/web-api-routing-and-actions/routing-in-aspnet-web-api
我仍然不明白哪里出了问题,或者我能做些什么来解决它。我觉得我误解了一些基本的东西。请帮助
我现在觉得自己很蠢,但问题出在我身上。我在本地 IIS 中向错误的端口发出请求。这对其他人来说并不重要,但正确的端口是 60744 而不是 60736。路由一直都是正确的。
我有一个名为 GetPostalCodeXml
的 GET 端点,但它似乎从未被正确路由
该方法在一个名为 WebServiceController
的 class 中,如下所示:
public class WebServiceController : ApiController
{
[HttpGet]
[ActionName("GetPostalCodeXml")]
public HttpResponseMessage GetPostalCodeXml(string postalCode)
{
return Request.CreateResponse(HttpStatusCode.OK, "ok");
}
}
在我的 WebApiConfig.cs
文件中,以下代码是 运行:
config.Routes.MapHttpRoute(
name: "GetPostalCodeXml",
routeTemplate: "WebService/GetPostalCodeXml",
defaults: new { controller = "WebService", action = "GetPostalCodeXml" }
);
我正在尝试使用以下 URL 向端点发出 GET 请求:
http://localhost:60736/WebService/GetPostalCodeXml?postalCode=73522
但它似乎永远都行不通。
我试过用不同的方式编写路由并更改方法名称等。我还尝试阅读有关路由的 Microsoft 文档页面:https://docs.microsoft.com/en-us/aspnet/web-api/overview/web-api-routing-and-actions/routing-in-aspnet-web-api
我仍然不明白哪里出了问题,或者我能做些什么来解决它。我觉得我误解了一些基本的东西。请帮助
我现在觉得自己很蠢,但问题出在我身上。我在本地 IIS 中向错误的端口发出请求。这对其他人来说并不重要,但正确的端口是 60744 而不是 60736。路由一直都是正确的。