在ASP.NET Core API中,可以使用传统的路由来定义API的路由规则。在传统的路由中,可以使用MapRoute
方法来定义路由规则。
以下是一个使用传统路由的ASP.NET Core API的代码示例:
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.DependencyInjection;
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Home/Error");
}
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
app.Run(async (context) =>
{
await context.Response.WriteAsync("Hello World!");
});
}
}
public class HomeController : Controller
{
public IActionResult Index()
{
return Content("Home/Index");
}
public IActionResult About()
{
return Content("Home/About");
}
}
在上面的代码中,使用了传统的路由方式来定义API的路由规则。在Configure
方法中,通过app.UseMvc
来启用MVC,并通过routes.MapRoute
方法定义了一个默认的路由规则,该路由规则将请求映射到HomeController
的Index
方法。
当访问http://localhost:5000
时,将会执行HomeController
的Index
方法,并返回Home/Index
。
当访问http://localhost:5000/Home/About
时,将会执行HomeController
的About
方法,并返回Home/About
。
这就是一个使用传统路由的ASP.NET Core API的解决方法。