Повторная загрузка с ServiceRoute выдает исключение «Маршрут с разрешенным виртуальным путем уже добавлен»

#asp.net-mvc-3 #asp.net-mvc-routing

#asp.net-mvc-3 #asp.net-mvc-routing

Вопрос:

Мы создали routeProvider, который хранит данные маршрута в базе данных. Иногда (в основном во время разработки) мы хотим перезагрузить таблицу маршрутов без перезапуска приложения. Для этого мы вызываем метод ReloadRoutes у поставщика, и это работало очень хорошо, пока мы не добавили ServiceRoute в нашу коллекцию маршрутов.

С тех пор при попытке добавить serviceRoute во второй раз (после routes.Clear()), обработчик ServiceRouteHandler выдает исключение. Похоже, что метод clear в RouteCollection не очистил все это. Теперь, как я могу очистить serviceroute?

 private void LoadRoutes(RouteCollection routeTable)
{
  routeTable.Clear();
  routeTable.IgnoreRoute("{resource}.axd/{*pathInfo}");

  //Add some Route (woks fine)

  // Add the service route to the application (throw exception the second time)
  routeTable.Add(new ServiceRoute("Services/RouteProvider/", new WindsorServiceHostFactory<DefaultServiceModel>(), typeof(IRouteProviderService)));
}
  

Комментарии:

1. у меня такая же проблема. мы не можем использовать шаблон в с servicereoute.) вы разрешили это? Спасибо