Кодирование URL-адреса MVC3?

ASP.NET MVC3 / Razor.

Я обнаружил, что когда я создаю ссылку на действие, скажем, вот так:

@Html.ActionLink(product.Title, "Detail", "Products", new { id = product.ProductID }, null)

Механизм MVC3 создает ссылку на мой продукт. Например:

http://myhost/{ActionUrl}/PRODID

Однако, если бы мой идентификатор продукта содержал какой-либо специальный символ, он не был бы закодирован в URL.

http://myhost/{ActionUrl}/PROD/ID

Конечно, это нарушает мою маршрутизацию. Мои вопросы:

  1. Следует ли мне ожидать, что он будет автоматически кодировать значения URL? Есть ли способ настроить это?
  2. Если нет, то каков наиболее чистый способ их кодирования и декодирования? Я действительно не хочу делать это в каждом контроллере.

Спасибо!

6
задан Alpha 18 July 2011 в 00:24
поделиться