【发布时间】:2017-03-15 02:59:37
【问题描述】:
我不确定我的路线有什么问题。当我尝试访问路由时,断点没有触发。
这是来自 google 高级休息客户端的源消息
POST /api/menu HTTP/1.1
HOST: localhost:6223
content-type: application/json
content-length: 34
{ "app_id": 99999, "user_type": 2}
这是我的控制器
[Route("api/[controller]")]
public class MenuController : Controller
{
private MenuRepo xMenuRepo;
public MenuController(IOptions<SqlConnectionStringsList> iopt)
{
xMenuRepo = new MenuRepo(iopt);
}
[HttpPost]
public IEnumerable<Menu> GetMenuItems([FromBody] MenuQuery menuq)
{
List<Menu> xMenuList = new List<Menu>();
xMenuList = xMenuRepo.GetMenuItems(menuq.app_id, menuq.user_type);
return xMenuList;
}
}
public class MenuQuery
{
public int app_id { get; set; }
public int user_type { get; set; }
}
我在GetMenuItems 上放置了一个断点,它甚至没有触发。响应是 500 内部服务器错误。这个项目只有两个路由,一个新项目的默认 ValuesController 和这个 MenuController。除了控制器顶部之外,我找不到任何其他位置来指定项目中的路由。但是 ValuesController 有效!我不知道怎么了!?
【问题讨论】:
标签: c# asp.net asp.net-web-api routes asp.net-core