可选路由参数
Optional route parameters
[Route("v2/Actual")]
[HttpGet]
public async Task<IEnumerable<MeasurementActualAggregatedResultViewModel>> GetActualsWithHierarchy(int calendarStartYear = 0, int calendarEndYear = 0, string managementSystem = "amspe")
{
var result = ...
return result;
}
// I want to make this recognise ....v2/Actual?measurementId=1&calendarMonth=12&calendarYear=2020
[Route("v2/Actual{measurementId}{calendarMonth}{calendarYear}")]
[HttpGet]
public async Task<MeasurementActualAggregatedResultViewModel> GetActual(int measurementId, int calendarMonth, int calendarYear)
{
return null;
}
我上面有一个API,我想将路由配置为如上。我很难在有问号的地方找到有关路由参数规范的答案。
Route(...) 值中应包含哪些内容?
谢谢。
直接使用如下Route,requesturl中的查询字符串默认匹配action中的参数,无需添加查询字符串作为Route参数:
[Route("v2/Actual")]
[HttpGet]
public async Task<MeasurementActualAggregatedResultViewModel> GetActual(int measurementId, int calendarMonth, int calendarYear)
{
return null;
}
[Route("v2/Actual")]
[HttpGet]
public async Task<IEnumerable<MeasurementActualAggregatedResultViewModel>> GetActualsWithHierarchy(int calendarStartYear = 0, int calendarEndYear = 0, string managementSystem = "amspe")
{
var result = ...
return result;
}
// I want to make this recognise ....v2/Actual?measurementId=1&calendarMonth=12&calendarYear=2020
[Route("v2/Actual{measurementId}{calendarMonth}{calendarYear}")]
[HttpGet]
public async Task<MeasurementActualAggregatedResultViewModel> GetActual(int measurementId, int calendarMonth, int calendarYear)
{
return null;
}
我上面有一个API,我想将路由配置为如上。我很难在有问号的地方找到有关路由参数规范的答案。
Route(...) 值中应包含哪些内容?
谢谢。
直接使用如下Route,requesturl中的查询字符串默认匹配action中的参数,无需添加查询字符串作为Route参数:
[Route("v2/Actual")]
[HttpGet]
public async Task<MeasurementActualAggregatedResultViewModel> GetActual(int measurementId, int calendarMonth, int calendarYear)
{
return null;
}