常规 .Net 框架在 System.Web 程序集中包含 HttpUtility.UrlEncode,在 Silverlight 中,它似乎已移至 System.Windows.Browser。但在 Windows Phone 7(我认为与 Silverlight 相同)中,我似乎找不到对任何内容进行 UrlEncode 的正确方法。前面提到的任何一个程序集都不能在 Windows Phone 7 环境中使用。
问问题
15481 次
3 回答
58
Silverlight 有Uri.EscapeUriString和Uri.EscapeDataString可用于对 URI 的部分进行 URL 编码,例如查询字符串和路径组件等。
即使在桌面框架中,您也不应该仅仅为 HttpUtility 依赖 System.Web.dll,尽管许多开发人员仍然这样做。这很糟糕,原因有 3 个。
- 程序集非常大,加载它会给您的应用程序增加显着的延迟。
- 对于大约 20 行代码,您将膨胀您的流程的工作集。
- 它使您的应用程序需要完整的框架,因为 System.Web 不在客户端配置文件中。
除了上面描述的 Uri 转义方法之外,如果您需要 HtmlEncode,我只会撕掉其他人编写的代码并将其放入您的应用程序中。
于 2010-04-04T02:42:57.183 回答
25
HttpUtility.UrlEncode
并且HttpUtility.UrlDecode
在 Windows Phone 7 中,他们只是被感动了。
System.Net.HttpUtility
在程序集 System.Windows.dll 中查找它们。
于 2010-05-28T06:16:00.223 回答
0
现在解决了。您可以使用 :
Windows.Data.Html.HtmlUtilities.ConvertToText("your_html_string");
于 2014-05-26T04:39:55.300 回答