Silverlight имеет Uri.EscapeUriString и Uri.EscapeDataString , которые можно использовать для кодирования URL-адресов частей URI, таких как строки запроса и компоненты пути и т. Д.
Даже в настольных системах вы никогда не должны зависеть от System.Web.dll только для HttpUtility, хотя многие разработчики все еще делают это. Это плохо по 3 причинам.
- Сборка очень большая, и загрузка может привести к значительным задержкам в вашем приложении.
- Вы будете раздувать рабочий набор вашего процесса примерно на 20 строк кода.
- Это заставляет ваше приложение требовать полной структуры, так как System.Web отсутствует в профиле клиента.
В дополнение к методам экранирования Uri, описанным выше, если вам нужен HtmlEncode, я просто скопировал бы код , который кто-то другой написал , и выбросил в приложение.