Я пишу реализующее веб-приложение ASP.NET, и когда я вызываю определенный URL, я хочу вызвать другой метод действия в зависимости от того, является ли запрос GET или POST.
Я попробовал два разных подхода - сначала я начинаю с контроллера со следующими методами действия:
<HttpGet>
Public Function Index() as ActionResult
...
End Function
<HttpPost>
Public Function Index() as ActionResult
...
End Function
... и затем регистрирую маршрут, который устанавливает .action в "Index" для URL,Это не компилируется, потому что две функции имеют одинаковую подпись.
Затем я попытался изменить имя подпрограммы Post на «Subscribe», но, конечно, для этого мне потребовалось бы предоставить два разных маршрута длятаблица маршрутизации (чтобы указать имя нового метода действия).Если я это сделаю, то обнаружу, что второй отменяется первым.
Теперь я думаю о том, чтобы вернуться к своей первоначальной идее, но предоставить ей фиктивный параметр и указать его как UrlParameter..Необязательный.Имея это в качестве аргумента в процедуре post, это создаст новую сигнатуру метода, которая, как я ожидаю, будет в порядке.
Хотя это пахнет грязным хаком - поэтому мне было интересно, как другие людипойдет на это?
Мартин.
Пс.Я сейчас попробовал грязный хак, и он работает.Тем не менее, до сих пор интересно услышать мнение других.