我已经按照几个示例建议在ASP.NET Core WebAPI项目中设置我的默认路由,我需要替换
app.UseMvc();
与
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller}/{action}",
defaults: new { controller = "Traders", action = "Get" });
});
但是当我运行时,默认为localhost:54321/api/values
,默认为localhost:54321/Traders
出了什么问题?
答案 0 :(得分:28)
答案 1 :(得分:3)
答案 2 :(得分:0)
请遵循以下步骤。
为您的API创建一个基本控制器,以扩展dotnet核心的基本控制器:
using Microsoft.AspNetCore.Mvc;
namespace WebApi.Controllers
{
[Route("api/[controller]")]
public abstract class ControllerApiBase : Controller
{
}
}
并在API控制器中继承基类:
using Microsoft.AspNetCore.Mvc;
using WebApi.Dtos;
namespace WebApi.Controllers
{
public class PingController : ControllerApiBase
{
public PingDto Get()
{
return new PingDto
{
Version = "0.0.0"
};
}
}
}