Попробуйте добавить trailing slash
к URL-адресу http://domain.com/Calendar/Unsubscribe/my@email.com/ без изменения правил маршрутизации.
Если вы все еще хотите избежать добавления trailing slash
и у вас есть доступная перезапись URL, вы можете добавить правило перезаписи в файл web.config
<system.webServer>
<rewrite>
<rules>
<rule name="Fix Unsubscribe emails route" stopProcessing="true">
<match url="^(Calendar/Unsubscribe/.*@.*)$" />
<action type="Rewrite" url="{R:1}/" />
</rule>
</rules>
</rewrite>
</system.webServer>
Вы также можете написать лучшее регулярное выражение, чем то, которое я предоставил для удобства чтения.
Вы также можете попытаться изменить порядок параметров вашего маршрута, например /Calendar/my@email.com/Unsubscribe, чтобы электронное письмо не было последним параметром.