【发布时间】:2014-10-09 03:25:26
【问题描述】:
我创建了一个名为 WebPortalController 的新控制器,但是当我调用它或尝试通过浏览器调用它时,我无法访问下面的方法,只是说找不到资源。如果需要,是否需要在 RoutesConfig.cs 代码中添加新路由?
namespace WebApi.Controllers
{
public class WebPortalController : ApiController
{
// GET api/webportal
private WebPortEnterpriseManagementDa _da = new WebPortEnterpriseManagementDa();
public ManagedType Get(string name)
{
ManagedType items = _da.GetManagedType(name);
return items;
}
// POST api/webportal
public void Post([FromBody]string value)
{
}
// PUT api/webportal/5
public void Put(int id, [FromBody]string value)
{
}
// DELETE api/webportal/5
public void Delete(int id)
{
}
}
}
路由文件
namespace WebApi
{
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
}
【问题讨论】:
-
你能显示你用来调用 API 的完整 url 吗?
-
@JonSusiak 我想调用方法 public ManagedType Get(string name) 传递 System.WorkItem.Incident 但出现错误
-
我的意思是你使用的网址应该是:localhost:5555/api/webportal/1234
-
@JonSusiak localhost:55304/api/WebPortal/Test
标签: asp.net-mvc asp.net-web-api asp.net-mvc-routing