我正在学习使用ASP.NET Core构建CRUD Web API。
根据Microsoft提供的一些教程,这是GetById()
方法及其他方法的工作原理:
[HttpGet("{id}", Name = "GetItem")]
public IActionResult GetById(long? id)
{
// get result item here ...
return new ObjectResult(item);
}
[HttpPost]
public IActionResult Create([FromBody] T item)
{
// add new item into context here ...
return CreatedAtRoute(
"GetItem",
new { id = item.Id },
item
);
}
对于CRUD方法我做的事情非常相似,现在我试图让它成为通用的CRUD控制器。但是,我坚持使用Name = "GetItem"
部分。
我有2个不同的控制器继承了这个CRUD控制器,但他们仍然共享相同的路由名称,#34; GetItem",它未能成为Name = "{_routeName}"
或几个不同的试用。
是否可以使此Name
属性动态化?或者可能有任何其他建议来构建通用CRUD控制器?谢谢!