Ваша проблема
[Route("{id:int}/{name:alpha}")]
Вы говорите, что принимайте только буквы алфавита, что означает a-z и A-Z, не включая никаких специальных символов. лучше всего использовать регулярное выражение для проверки, если это всегда адрес электронной почты.
попробуйте это
[Route("{id:int}/{name}")]