HttpUtility.UrlКод в Windows Phone 7? - PullRequest
34 голосов
/ 04 апреля 2010

Обычная среда .Net содержит HttpUtility.UrlEncode в сборке System.Web, а в Silverlight, похоже, она была перемещена в System.Windows.Browser. Но в Windows Phone 7 (который я думал, что это то же самое, что Silverlight), я не могу найти правильный способ UrlEncode ничего. Ни одна из ранее упомянутых сборок не доступна в среде Windows Phone 7.

Ответы [ 3 ]

58 голосов
/ 04 апреля 2010

Silverlight имеет Uri.EscapeUriString и Uri.EscapeDataString , которые можно использовать для кодирования URL-адресов частей URI, таких как строки запроса и компоненты пути и т. Д.

Даже в настольных системах вы никогда не должны зависеть от System.Web.dll только для HttpUtility, хотя многие разработчики все еще делают это. Это плохо по 3 причинам.

  • Сборка очень большая, и загрузка может привести к значительным задержкам в вашем приложении.
  • Вы будете раздувать рабочий набор вашего процесса примерно на 20 строк кода.
  • Это заставляет ваше приложение требовать полной структуры, так как System.Web отсутствует в профиле клиента.

В дополнение к методам экранирования Uri, описанным выше, если вам нужен HtmlEncode, я просто скопировал бы код , который кто-то другой написал , и выбросил в приложение.

25 голосов
/ 28 мая 2010

HttpUtility.UrlEncode и HttpUtility.UrlDecode в Windows Phone 7, они только что переехали.

Ищите их в System.Net.HttpUtility в сборке System.Windows.dll.

0 голосов
/ 26 мая 2014

Теперь это решено. Вы можете использовать:

Windows.Data.Html.HtmlUtilities.ConvertToText("your_html_string");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...