Windows Phone 7中的HttpUtility.UrlEncode?

时间:2010-04-04 01:51:38

标签: c# silverlight windows-phone-7

常规.Net框架在System.Web程序集中包含HttpUtility.UrlEncode,在Silverlight中它似乎已移动到System.Windows.Browser。但是在Windows Phone 7中(我认为它与Silverlight相同)我似乎无法找到适当的方式来UrlEncode任何东西。前面提到的程序集都不适用于Windows Phone 7环境。

3 个答案:

答案 0 :(得分:58)

Silverlight具有Uri.EscapeUriStringUri.EscapeDataString,可用于对URI的部分进行URL编码,例如查询字符串和路径组件等。

即使在桌面框架中,您也不应仅仅为HttpUtility依赖System.Web.dll,尽管许多开发人员仍然这样做。这有三个原因。

  • 组件非常大,加载它会给应用程序带来明显的延迟。
  • 对于大约20行代码,您将使流程的工作集膨胀。
  • 它使您的应用程序需要完整的框架,因为System.Web不在客户端配置文件中。

除了上面描述的Uri转义方法之外,如果你需要HtmlEncode,我只需将代码翻到that someone else wrote并将其放入你的应用程序中。

答案 1 :(得分:25)

HttpUtility.UrlEncodeHttpUtility.UrlDecode在Windows Phone 7中,它们刚被移动。

在程序集System.Windows.dll中的System.Net.HttpUtility中查找它们。

答案 2 :(得分:0)

现在它已经解决了。您可以使用:

Windows.Data.Html.HtmlUtilities.ConvertToText("your_html_string");