Ответ 1
В WebApiConfig введите маршрут как "/{email}/". Конец "/" не позволит вам получить Нет HTTP-ресурса, который соответствует запросу URI...
Как передать адрес электронной почты в качестве параметра в конце URL-адреса в веб-интерфейсе ASP.NET MVC?
как показано ниже:
test.com/api/sales/getcustomerorders/[email protected]
Я хочу передать адрес электронной почты в качестве параметра для действия getcustomerorders.
мы можем передать строку запроса. Но я хочу отформатировать URL-адрес, как указано выше.
Спасибо.
В WebApiConfig введите маршрут как "/{email}/". Конец "/" не позволит вам получить Нет HTTP-ресурса, который соответствует запросу URI...
Проблема в том, что у вас есть период в URL-адресе.
Чтобы заставить его работать, измените свою веб-конфигурацию, чтобы добавить следующие две конфигурации:
<configuration>
<system.web>
<httpRuntime relaxedUrlToFileSystemMapping="true" />
</system.web>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
</configuration>
Haacked имеет блог о relexUrlToFileSystemMapping http://haacked.com/archive/2010/04/29/allowing-reserved-filenames-in-URLs.aspx
И у меня есть ошибка об этом в IIS express 8 и вам нужны runAllManagedModulesForAllRequests: https://aspnetwebstack.codeplex.com/workitem/226
Скотт Гензельм описывает это в этом сообщении в блоге. В качестве альтернативы вы можете передать электронное письмо как параметр строки запроса, а не как часть пути, так как некоторые символы не разрешены.