ApiController возвращает 404, когда ID содержит точку

У меня есть ApiController, и я хочу использовать адреса электронной почты в качестве параметра ID для запросов:

// GET api/employees/[email protected]
public CompactEmployee Get(string id) {
   var email = id;
   return GetEmployeeByEmail(email);
}

Тем не менее, я не могу заставить это работать (возвращается404):

http://localhost:1080/api/employees/[email protected]

Следующие все работы:

http://localhost:1080/api/employees/employee@companyhttp://localhost:1080/api/employees/employee@company.http://localhost:1080/api/[email protected]

Я поставилrelaxedUrlToFileSystemMapping="true" в моем web.config какподробный Фил Хаак.

Я бы очень хотел, чтобы полный адрес электронной почты работал, но всякий раз, когда за точкой следует любой другой символ, запрос возвращает 404. Любая помощь будет принята с благодарностью!

Решение

Из-за отсутствия других вариантов ямы пошли в том направлении, в котором предложила Мэгги и использовала ответэтот вопрос создать правило перезаписи, чтобы автоматически добавлять завершающий слеш, когда мне нужно письмо в URL.


  ....   
  
    
      
        
        
      
    
  

Ответы на вопрос(3)

Ваш ответ на вопрос