是否可以在WebApi中使用2个具有相同名称的方法名称,并且参数类型相同但参数不同?
例如,一个是按年份获得产品
另一个是通过Productid获得产品
我喜欢这个Rout:
a4 = [str(x) for x in code_block]
a6 = [str(x) for x in text_block]
我知道我可以有不同的名字,但我的老板喜欢有相同的名字我想知道是否可能。
这些是方法:
Products?yearId=10
Products/15
不确定[Route]应如何获得此最终结果。
答案 0 :(得分:2)
正如Brendan Green评论的那样,您需要定义两条不同的路线。否则,将无法确定您实际要调用的方法:
[HttpGet]
[Route("Products/Year/{yearId}")]
public async Task<IEnumerable<Make>> GetProductsYearId(int yearId)
{
...
}
[HttpGet]
[Route("Products/Make/{makeid}")]
public async Task<Make> GetProductById(int makeid)
{
...
}