1
所以一个典型的crud会是这样的。很多很多crud请求
[Route("api/[controller]")]
public class ProvidersController : Controller {
[HttpGet]
public IEnumerable<object> Get(){}
[HttpGet("{id}")]
public IActionResult Get(int id) {}
// POST api/provider
[HttpPost]
public IActionResult Post([FromBody]Provider value){}
// PUT api/provider/5
[HttpPut("{id}")]
public IActionResult Put(int id, [FromBody]Provider value){}
// DELETE api/provider/5
[HttpDelete("{id}")]
public IActionResult Delete(int id) {}
}
但是我想将它扩展为多对多的类型资源。
我在哪里有路径/ api/provider/{id}/resolution [GET,POST,PUT,DELETE]。
我在不同的班级做这个或者我是否扩展这个?我可以将它添加到这个类吗?
我试图做下面的事情,但它似乎不应该在同一类。
[Route("api/[controller]")]
public class ProvidersController : Controller {
[HttpGet]
public IEnumerable<object> Get(){}
[HttpGet("{id}")]
public IActionResult Get(int id) {}
// POST api/provider
[HttpPost]
public IActionResult Post([FromBody]Provider value){}
// PUT api/provider/5
[HttpPut("{id}")]
public IActionResult Put(int id, [FromBody]Provider value){}
// DELETE api/provider/5
[HttpDelete("{id}")]
public IActionResult Delete(int id) {}
Route["{providerId}/resources/"]
public IEnumerable<object> Get(int providerId){}
Route["{providerId}/resources/{id}"]
public IActionResult<object> Get(int providerId, int id){}
}
所以如果我将它移动到另一个控制器,路线将如何显示? [Route(“api/provider/{providerId}/[controller]”)] public class OtherController:Controller {? –
api/resource/{providerId}/{id} –