Несколько GET в Web API вызывают неправильное действие
у меня естьWeb API
это выглядит следующим образом ...
public class LeaguesController : ApiController
{
//api/Leagues/active/1
//api/Leagues/complete/1
//api/Leagues/both/1
[GET("api/Leagues/{type}/{id}")]
public List<Competition> Get([FromUri]int id,
[FromUri]CompetitionManager.MiniLeagueType type)
{
return CompetitionManager.GetUsersMiniLeagues(id, true, type);
}
//api/Leagues/GetMiniLeagueTable/3
[GET("api/Leagues/GetMiniLeagueTable/{id}")]
public List<SportTableRow> GetMiniLeagueTable([FromUri]int id)
{
return SportManager.GetMiniLeagueTable("", id).TableRows;
}
}
Когда я вызываю первый методGet
, это работает нормально. Когда я использую Fiddler или Chrome REST Client, чтобы вызвать второй методGetMiniLeagueTable
Я получаю следующую ошибку:
{Сообщение: «Запрос недействителен». MessageDetail: «Словарь параметров содержит пустую запись для параметра« тип »непустимого типа« CompetitionManager + MiniLeagueType »для метода« System.Collections.Generic.List`1 [Competition] Get (Int32, MiniLeagueType) »в« LeaguesController » «Необязательный параметр должен быть ссылочным типом, обнуляемым типом или быть объявлен как необязательный параметр». }
Я используюAttributeRouting
украсить методы, но это не похоже на работу. Он работал нормально, прежде чем я представилMiniLeagueType
.
Кто-нибудь сталкивался с этой проблемой, или вы можете указать мне, где я иду не так?