你可以使用ASP.NET Core的特性来给控制器操作进行别名化。下面是一个示例代码:
首先,在控制器类中使用[Route]
特性来定义控制器的路由模板。然后,使用[HttpGet]
、[HttpPost]
等特性来定义控制器操作的路由和HTTP方法。
[Route("api/[controller]")]
public class MyController : Controller
{
[HttpGet("get-data")]
public IActionResult GetData()
{
// 处理获取数据的逻辑
return Ok("Data retrieved");
}
[HttpPost("save-data")]
public IActionResult SaveData([FromBody] MyModel model)
{
// 处理保存数据的逻辑
return Ok("Data saved");
}
}
在上面的示例中,[Route("api/[controller]")]
定义了控制器路由模板为"api/[controller]",其中"[controller]"会被替换为控制器的名称,例如"MyController"。因此,控制器的完整路由为"api/MyController"。
[HttpGet("get-data")]
和[HttpPost("save-data")]
分别定义了控制器操作的路由模板为"get-data"和"save-data"。因此,控制器操作的完整路由为"api/MyController/get-data"和"api/MyController/save-data"。
这样,你就可以通过这些别名化的路由来访问控制器操作,例如访问"api/MyController/get-data"来调用GetData
操作。
注意,需要在Startup类的Configure方法中调用app.UseMvc()
来启用MVC路由。