在C#中定義路由規則可以使用ASP.NET Core中的路由特性來實現。要定義路由規則,可以在控制器類或者方法上使用Route特性來指定路由模板。
以下是在C#控制器中定義路由規則的示例代碼:
[Route("api/[controller]")]
[ApiController]
public class SampleController : ControllerBase
{
[HttpGet]
public IActionResult Get()
{
// Your logic here
}
[HttpGet("{id}")]
public IActionResult GetById(int id)
{
// Your logic here
}
[HttpPost]
public IActionResult Post([FromBody] SampleModel model)
{
// Your logic here
}
}
在上面的示例中,使用Route特性指定了控制器的路由模板為"api/[controller]",這意味著該控制器的路由將會以"api/"開頭,然后是控制器的名稱。
在Get、GetById和Post方法上也分別使用了Route特性來指定具體的路由模板。例如,GetById方法的路由模板為"{id}“,這意味著該方法的路由將會以控制器的路由模板加上”/{id}"的形式。
通過在控制器類和方法上使用Route特性,可以靈活地定義路由規則,以滿足不同的需求。