Исключение ReloadRoutes с ServiceRoute выдает исключение «Маршрут с разрешенным виртуальным путем уже добавлен» - PullRequest
1 голос
/ 06 июня 2011

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

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

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)));
}
...