Как использовать URL Rewriter.net для автоматической перезаписи URL

Я пытаюсь переписать любой URL, который соответствует этому шаблону:

~/Ahmed
~/Name

к этому:

~/User/Ahmed/Ahmed.aspx
~/User/Name/Name.aspx

и я могу написать их по отдельности, но я пытаюсь обнаружить любой URL, который выглядит "~/User/Ahmed/Ahmed" и автоматически переписать их на это "Ahmed"

Спасибо

1 ответ

Решение

Надеюсь, вы используете библиотеку UrlRewritingNet, а не UrlRewriter? Первое предлагается над вторым.

Тем не менее, в любом из них вы можете использовать регулярное выражение:

"~/User/([^/\\]+)/\1.aspx"  ->  "~/$1" //For ".aspx" in the URL
"~/([A-Za-z]+)" to "~/User/$1/$1.aspx" //For /Name in the URL.

Обратите внимание, что ([^/\]+) означает любой набор символов без косой черты, а "\1" является обратной ссылкой на предыдущий захват, который гарантирует, что имя является точной копией. Обратите внимание, что вы должны включить "игнорировать регистр", если вы хотите поддерживать "/User/ahmed/Ahmed.aspx", а не только "/User/Ahmed/Ahmed.aspx".

Другие вопросы по тегам