C# c Rest使用GetOne和GetAll获取端点
我有一个非常简单的端点作为例子 /使用者/ 为了获得所有用户,wich返回一个由N个元素组成的数组,如果没有用户,则返回0个元素 这是在一个特定的方法上实现的C# c Rest使用GetOne和GetAll获取端点,c#,rest,C#,Rest,我有一个非常简单的端点作为例子 /使用者/ 为了获得所有用户,wich返回一个由N个元素组成的数组,如果没有用户,则返回0个元素 这是在一个特定的方法上实现的 [HttpGet] [Route("api/users")] public void getUsers() { ... } 但是,我需要通过id获得一个用户,所以我需要另一个api enpoint。问题是,我应该在同一个方法上实现它,还是在另一个方法上实现它 [HttpGet] [Route("api/users")] [Route("
[HttpGet]
[Route("api/users")]
public void getUsers() { ... }
但是,我需要通过id获得一个用户,所以我需要另一个api enpoint。问题是,我应该在同一个方法上实现它,还是在另一个方法上实现它
[HttpGet]
[Route("api/users")]
[Route("api/users/{id:int}")]
public void getUsers(int? id) { ... }
在本例中,我的返回是不同的,是单个用户还是NotFound而不是数组
所以我想知道这是否应该作为一个方法来实现,重用代码还是两个不同的方法。2个不同的方法,以防响应不同。看起来一种方法是获取所有用户的详细信息,另一种方法是基于用户id获取特定的用户详细信息。用户和IEnumerable的返回类型不同,这表明了不同的方法。但这个问题恐怕是基于意见的。