У меня есть веб-API MVC на .NET Core 2.2
Когда я запускаю свой API локально, все мои маршруты, кажется, работают нормально, но когда я внедряю это в Azure / на моем сервере, маршруты кажутсявозвращает ошибку 404.
Это мой 'PricesController', в котором закодированы маршруты:
namespace tf.PriceService.API.Controllers
{
[Route("HorseRacingApi/prices/")]
[Produces("application/json")]
[ApiController]
public class PricesController : Controller
{
private readonly IPriceService _priceService;
public PricesController(IPriceService priceService)
{
_priceService = priceService;
}
[HttpGet]
[Route("GetPricesForRace/{meetingDate}/{courseId}/{raceNumber}/{ShowAll?}")]
public IActionResult GetPricesForRace(DateTime meetingDate, int courseId, int raceNumber, bool? ShowAll = false)
{
return Ok(_priceService.GetPricesForRace(meetingDate, courseId, raceNumber));
}
[HttpGet]
[Route("GetPriceForEntry/{meetingDate}/{courseId}/{raceNumber}/{horseCode}")]
public IActionResult GetPriceForEntry(DateTime meetingDate, int courseId, int raceNumber, string horseCode)
{
return Ok(_priceService.GetPriceForEntry(meetingDate, courseId, raceNumber, horseCode));
}
[HttpGet]
[Route("GetPriceForEntries/{ShowAll?}")]
public IActionResult GetPriceForEntries(bool? ShowAll)
{
string jsonString = null;
using (StreamReader reader = new StreamReader(Request.Body, Encoding.UTF8))
{
jsonString = reader.ReadToEnd();
}
List<Core.Models.JsonEntryKey> list = JsonConvert.DeserializeObject<List<Core.Models.JsonEntryKey>>(jsonString);
return Ok(_priceService.GetPriceForEntries(list));
}
}
}
Использование следующего URL работает локально: https://localhost:44374/HorseRacingApi/prices/GetPricesForRace/2019-06-24/47/1
, но не работает для версии Azure и возвращает 404. Я что-то упустил?Кроме того, тип возвращаемого значения - JSON, если это помогает.
Спасибо.