【发布时间】:2016-06-05 23:58:21
【问题描述】:
添加此内容时有许多建议的问题/答案。我经历了一堆,似乎没有任何帮助。
我确定我错过了一些简单的东西,只是看不到它。
我有一个现有的 ASP.Net MVC (V5) 站点。这是一个单页。
我正在向它添加一个 API 控制器 (WebAPI 2) 来处理一些 ajax 帖子。
尝试发布到我的控制器时,我似乎无法通过 404 错误。
我也在使用属性路由。
以下是我认为您需要查看的代码部分:
API 控制器
[RoutePrefix("api/services")]
public class ServicesController : ApiController
{
[HttpPost]
[Route("contact")]
public HttpResponseMessage SendContact(ContactModel model)
{
return Request.CreateResponse(HttpStatusCode.OK, true);
}
}
WebApiConfig - 在我尝试的时候,有几个部分被注释掉了。
public class WebApiConfig
{
public static void Register(HttpConfiguration configuration)
{
configuration.MapHttpAttributeRoutes();
//configuration.Routes.MapHttpRoute("API Default", "api/{controller}/{id}",
// new { id = RouteParameter.Optional });
}
}
还有我的 global.cs - 再次注释掉我尝试过的东西
AreaRegistration.RegisterAllAreas();
RouteConfig.RegisterRoutes(RouteTable.Routes);
//WebApiConfig.Register(GlobalConfiguration.Configuration);
BundleConfig.RegisterBundles(BundleTable.Bundles);
GlobalConfiguration.Configure(WebApiConfig.Register);
当尝试发布到我收到的 api 时:
POST http://localhost:8085/api/services/contact 404 (Not Found)
知道我错过了什么吗?
【问题讨论】:
标签: c# asp.net-mvc asp.net-web-api