У меня есть контроллер ASP .NET MVC, которые получают два десятичных параметра:Передача двух десятичных значений в ASP .NET MVC контроллер
[HttpGet, Route("stores/{latitude}/{longitude}")]
public void GetStores(decimal latitude, decimal longitude)
{
...
}
Этот контроллер не работает (ошибка 404), когда я вызываю этот адрес:
http://localhost:16959/store/stores/40.5479397/-3.6116505
... Но если я изменить мой контроллер, и добавить «/» в строке маршрута, я могу ссылаться на этот адрес правильно (Почтальон):
[HttpGet, Route("stores/{latitude}/{longitude}/")]
public void GetStores(decimal latitude, decimal longitude)
{
...
}
http://localhost:16959/store/stores/40.5479397/-3.6116505/
проблема сейчас, Кураж не признают эту косую черту «/» и не нашел контроллер.
Мой вопрос ... Каков наилучший способ решить эту проблему? Пропускать значения в запросе тела? Добавить косую черту во втором параметре?
Точка (.) В десятичной системе делает фреймворк думать, что это расширение файла для файла, который он может найти. поэтому 404 не найдена ошибка – Nkosi
спасибо !! @Nkosi –
Возможный дубликат [Как передать десятичное значение методу действия] (http://stackoverflow.com/questions/20799263/how-to-pass-decimal-value-to-action-method) – Nkosi