System.Web.HttpUtility VS System.Web.HttpServerUtility VS System.Net.WebUtility

HttpUtility 类作为 HttpServerUtility 类的内部使用,HttpServerUtility 通过System.Web.UI.Page.Server属性(WebForm)/Controller.Server(MVC)对外提供服务,他们都位于System.Web命名空间下,供asp.net使用
System.Net.WebUtility提供相似的API,用于非asp.net应用,API内部有细微差别,具体可以查看.net源码http://referencesource.microsoft.com
public sealed class HttpServerUtility {
public string HtmlEncode(string s) {
            return HttpUtility.HtmlEncode(s);
        }


public void HtmlEncode(string s, TextWriter output) {
            HttpUtility.HtmlEncode(s, output);
        }

public string HtmlDecode(string s) {
            return HttpUtility.HtmlDecode(s);
        }

public void HtmlDecode(string s, TextWriter output) {
            HttpUtility.HtmlDecode(s, output);
        }


public string UrlEncode(string s) {
            Encoding e = (_context != null) ? _context.Response.ContentEncoding : Encoding.UTF8;
            return HttpUtility.UrlEncode(s, e);
        }

public void UrlEncode(string s, TextWriter output) {
            if (s != null)
                output.Write(UrlEncode(s));
        }
 
public string UrlDecode(string s) {
            Encoding e = (_context != null) ? _context.Request.ContentEncoding : Encoding.UTF8;
            return HttpUtility.UrlDecode(s, e);
        }
public void UrlDecode(string s, TextWriter output) {
            if (s != null)
                output.Write(UrlDecode(s));
        }
}

 

posted @ 2018-01-11 16:39  悠哉大斌  阅读(505)  评论(0编辑  收藏  举报