常规 .Net 框架在 System.Web Assembly 中包含 HttpUtility.UrlEncode,在 Silverlight 中它似乎已移至 System.Windows.Browser。但是在 Windows Phone 7(我认为它与 Silverlight 相同)中,我似乎无法找到对任何内容进行 UrlEncode 的正确方法。前面提到的程序集在 Windows Phone 7 环境中都不可用。
最佳答案
Silverlight 有 Uri.EscapeUriString和 Uri.EscapeDataString可用于对 URI 的部分进行 URL 编码,例如查询字符串和路径组件等。
即使在桌面框架中,您也不应该仅仅为了 HttpUtility 而依赖 System.Web.dll,尽管许多开发人员仍然这样做。这很糟糕,原因有 3 个。
- 程序集非常大,加载它可能会严重延迟您的应用程序。
- 您将因大约 20 行代码而使流程的工作集膨胀。
- 它使您的应用程序需要完整的框架,因为 System.Web 不在客户端配置文件中。
除了上面介绍的Uri转义方法外,如果你需要HtmlEncode,我直接把代码去掉that someone else wrote并将其放入您的应用程序中。
关于c# - Windows Phone 7 中的 HttpUtility.UrlEncode?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2573290/