我是ASP.Net的新手。刚开始学习创建Web API。下面是我试图执行的Hello World示例。我正在使用visual studio 2013。
以下是我的控制器类。
public class HW : ApiController
{
[HttpGet]
public string SayHello()
{
return "Hello World!";
}
}
我的问题是,如何路由Web请求,以便映射到SayHello方法。
这是我目前在WebApiConfig.cs中配置的用于映射的内容
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { controller = "HW", action = "SayHello", id = RouteParameter.Optional }
);
我收到“没有找到与名为HW的控制器相匹配的类型”错误。
如果我使用Route注释它可以工作。
〔路线( “API / HW / SayHello的”)]
答案 0 :(得分:0)
MVC使用命名约定。其中一个约定是控制器名称结束Controller。因此,当您的路由状态为controller = "HW"
时,需要一个名为HWController的控制器。
如果将控制器从HW重命名为HWController,它应该可以工作。