我向项目添加了一个api控制器,并更改了启动文件。但仍然无法正常工作
[Route("api/[controller]")]
[ApiController]
public class HomeApiController : ControllerBase
{
// GET: api/HomeApi
[HttpGet]
public IEnumerable<string> Get()
{
return new string[] { "value1", "value2" };
}
}
和
routes.MapRoute(
name: "default",
template: "{culture=en}/{controller=Home}/{action=Index}/{id?}");
routes.MapRoute(
name: "api",
template: "api/{culture=en}/{controller=Home}/{action=Index}/{id?}");
控制器上的route属性
[Route("api/[controller]")]
public class HomeApiController : ControllerBase
将映射到
api/homeapi
因为控制器的名称已由[controller]
路由模板中的令牌替换。
相应地重命名控制器
[Route("api/[controller]")]
[ApiController]
public class HomeController : ControllerBase
或更新路线模板
[Route("api/home")]
[ApiController]
public class HomeApiController : ControllerBase
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句