Причина, по которой я спрашиваю, заключается в том, что IIS защищает определенные папки ASP.NET, такие как Bin, App_Data, App_Code и т. Д. Даже если URL-адрес не сопоставляется с реальной папкой файловой системы, IIS отклоняет URL-адрес с равным сегментом путик одному из упомянутых имен.
Это означает, что у меня не может быть маршрута, подобного этому:
{controller}/{action}/{id}
... где id может быть любой строкой, например
Catalog/Product/Bin
Итак, вместо того, чтобы отключить эту меру безопасности, я хочу изменить маршрут, используя суффикс перед идентификатором, например:
{controller}/{action}_{id} // e.g. Catalog/Product_Bin
{controller}/{action}/_{id} // e.g. Catalog/Product/_Bin
Но эти маршруты не будут работать, если идентификатор содержит новыйdelimeter, _ в данном случае, например
// These URL won't work (I get 404 response)
Catalog/Product_Bin_
Catalog/Product/_Bin_
Catalog/Product/__Bin
Почему?Я не знаю, похоже на ошибку для меня.Как я могу заставить эти маршруты работать, где id может быть любой строкой?