asp.Net 一些常用的方法和类

突然整理硬盘时找到了两年前写的一个网站,准备扔掉,但是还是把部分方法保留到博客吧!虽然现在对于自己已经用处不大,但是还是纪念一下!

生成验证码:

  1. using System; 
  2. using System.Data; 
  3. using System.Configuration; 
  4. using System.Collections; 
  5. using System.Web; 
  6. using System.Web.Security; 
  7. using System.Web.UI; 
  8. using System.Web.UI.WebControls; 
  9. using System.Web.UI.WebControls.WebParts; 
  10. using System.Web.UI.HtmlControls; 
  11. using System.Drawing; 
  12.  
  13. public partial class CheckCode : System.Web.UI.Page 
  14.     protected void Page_Load(object sender, EventArgs e) 
  15.     { 
  16.         if (!this.IsPostBack) 
  17.         { 
  18.             //生成验证码 
  19.             string temp = this.GetCode(4); 
  20.             HttpCookie cookie = new HttpCookie("yzm"); 
  21.             cookie.Value = temp; 
  22.             Response.Cookies.Add(cookie); 
  23.             //画图 
  24.             this.GetCheckCodeImage(temp); 
  25.         } 
  26.     } 
  27.  
  28.     //产生随机字符串  
  29.     private string GetCode(int num) 
  30.     { 
  31.         string[] source ={ "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J",  
  32.             "K", "L", "M", "N", "O","P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z" ,"a", "b", "c", "d", "e", "f", "g", "h", "i", "j",  
  33.             "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y","z"}; 
  34.         string code = ""
  35.         Random rd = new Random(); 
  36.         for (int i = 0; i < num; i++) 
  37.         { 
  38.             code += source[rd.Next(0, source.Length)]; 
  39.         } 
  40.         Session["ValidateCode"] = code;//将字符串保存到Session中,以便需要时进行验证   
  41.         return code; 
  42.  
  43.     } 
  44.     #region    验证码 
  45.  
  46.     /// <summary> 
  47.     /// 生成验证码 
  48.     /// </summary> 
  49.     /// <param name="checkCode"></param> 
  50.     private void GetCheckCodeImage(string checkCode) 
  51.     { 
  52.         if (checkCode == null || checkCode.Trim() == String.Empty) return
  53.  
  54.         System.Drawing.Bitmap image = new System.Drawing.Bitmap((int)Math.Ceiling((checkCode.Length * 12.5)),25); 
  55.         Graphics g = Graphics.FromImage(image); 
  56.         try 
  57.         { 
  58.             Random random = new Random();     //生成随机生成器  
  59.             g.Clear(Color.White);            //清空图片背景色 
  60.             for (int i = 0; i < 5; i++)     //画图片的背景噪音线 
  61.             { 
  62.                 int x1 = random.Next(image.Width); 
  63.                 int x2 = random.Next(image.Width); 
  64.                 int y1 = random.Next(image.Height); 
  65.                 int y2 = random.Next(image.Height); 
  66.                 g.DrawLine(new Pen(Color.Silver), x1, y1, x2, y2); 
  67.             } 
  68.             Font font = new System.Drawing.Font("Arial", 12, (System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic)); 
  69.             System.Drawing.Drawing2D.LinearGradientBrush brush = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height), Color.Blue, Color.DarkRed, 1.2f, true); 
  70.             g.DrawString(checkCode, font, brush, 2, 2); 
  71.  
  72.             //画图片的前景噪音点 
  73.             for (int i = 0; i < 60; i++) 
  74.             { 
  75.                 int x = random.Next(image.Width); 
  76.                 int y = random.Next(image.Height); 
  77.  
  78.                 image.SetPixel(x, y, Color.FromArgb(random.Next())); 
  79.             } 
  80.  
  81.             //画图片的边框线 
  82.             g.DrawRectangle(new Pen(Color.Silver), 0, 0, image.Width - 1, image.Height - 1); 
  83.             System.IO.MemoryStream ms = new System.IO.MemoryStream(); 
  84.             image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif); 
  85.             Response.ClearContent(); 
  86.             Response.ContentType = "image/Gif"
  87.             Response.BinaryWrite(ms.ToArray()); 
  88.         } 
  89.         finally 
  90.         { 
  91.             g.Dispose(); 
  92.             image.Dispose(); 
  93.         } 
  94.     } 
  95.     #endregion 
  96.  
  97.  


清空缓存:

  1. //清空客户端页面缓存 
  2. public static void ClearClientPageCache() 
  3.     HttpContext.Current.Response.Buffer = true
  4.     HttpContext.Current.Response.Expires = 0; 
  5.     HttpContext.Current.Response.ExpiresAbsolute = DateTime.Now.AddDays(-1); 
  6.     HttpContext.Current.Response.AddHeader("pragma", "no-cache"); 
  7.     HttpContext.Current.Response.AddHeader("cache-control", "private"); 
  8.     HttpContext.Current.Response.CacheControl = "no-cache"


分页方法:

  1. using System; 
  2. using System.Collections.Generic; 
  3. using System.Web; 
  4. using System.Text; 
  5. using System.Text.RegularExpressions; 
  6.  
  7.     public class PagingCollection<T> 
  8.     { 
  9.         private int pagezise; 
  10.  
  11.         public int Pagezise 
  12.         { 
  13.             get { return pagezise; } 
  14.             set { pagezise = value; } 
  15.         } 
  16.         private int pageindex; 
  17.  
  18.         public int Pageindex 
  19.         { 
  20.             get { return pageindex; } 
  21.             set { pageindex = value; } 
  22.         } 
  23.         private int TotalCount; 
  24.  
  25.         public int TotalCount1 
  26.         { 
  27.             get { return TotalCount; } 
  28.             set { TotalCount = value; } 
  29.         } 
  30.         private int TotalPage=0; 
  31.  
  32.         public int TotalPage1 
  33.         { 
  34.             get { return TotalPage; } 
  35.             set { TotalPage = value; } 
  36.         } 
  37.         private string url; 
  38.  
  39.         public string Url 
  40.         { 
  41.             get { return url; } 
  42.             set { url = value; } 
  43.         } 
  44.         private string urlparms; 
  45.  
  46.         public string Urlparms 
  47.         { 
  48.             get {  
  49.              
  50.                 return urlparms; } 
  51.             set { urlparms = value; } 
  52.         } 
  53.  
  54.         /// <summary> 
  55.         /// 分页数据构造 
  56.         /// </summary> 
  57.         /// <param name="source"></param> 
  58.         /// <param name="pageindex"></param> 
  59.         /// <param name="pagezise"></param> 
  60.         /// <param name="totalcount"></param> 
  61.         /// <param name="url"></param> 
  62.         public PagingCollection(int pageindex, int pagezise, int totalcount, string url) 
  63.         { 
  64.             this.pageindex = pageindex; 
  65.             this.pagezise = pagezise; 
  66.             TotalCount = totalcount; 
  67.             TotalPage = (int)Math.Ceiling(TotalCount / (double)pagezise); 
  68.             this.url = url; 
  69.  
  70.         } 
  71.  
  72.         public PagingCollection(int pageindex, int pagezise, int totalcount, string url,string urlparms) 
  73.         { 
  74.             this.pageindex = pageindex; 
  75.             this.pagezise = pagezise; 
  76.             TotalCount = totalcount; 
  77.             TotalPage = (int)Math.Ceiling(TotalCount / (double)pagezise); 
  78.             this.url = url; 
  79.             this.urlparms = urlparms; 
  80.  
  81.         } 
  82.         #region 分页属性 返回分页数据 
  83.  
  84.         public string GetPatePar 
  85.         { 
  86.             get 
  87.             { 
  88.                 if (TotalCount1 > 0) 
  89.                 { 
  90.                     StringBuilder str = new StringBuilder(); 
  91.                     int startpage = (pageindex - 1) / 10 * 10 + 1; 
  92.                     int endpage = (pageindex - 1) / 10 * 10 + 10; 
  93.                     int x = endpage > TotalPage ? TotalPage : endpage; 
  94.                     str.Append("<div  style=' color:#1E5494;'>共" + TotalPage1 + "页 /  当前第" + pageindex + "页   "); 
  95.  
  96.                     if (HasPreviousPage) 
  97.                     { 
  98.                         str.Append("<a href=" + url + "?page=1" + GetURLParms + "" + urlparms + ">首页</a> "); 
  99.                         str.Append("<a href=" + url + "?page=" + (pageindex - 1) + GetURLParms + "" + urlparms + ">上一页</a>"); 
  100.                     } 
  101.                     else 
  102.                     { 
  103.                         str.Append("<a href=#>首页 </a>"); 
  104.                         str.Append("<a href=#>上一页</a>"); 
  105.                     } 
  106.                     for (int i = startpage; i <= x; i++) 
  107.                     { 
  108.                         if (i == pageindex) 
  109.                         { 
  110.                             str.Append(string.Format("<a style='margin-left:3px; margin-right:3px;padding:2px 4px 2px 4px;color:red;border:1px solid #cccccc;background-color:#ffffff; '>" + i + "</a>")); 
  111.                         } 
  112.                         else 
  113.                         { 
  114.                             str.Append(string.Format("<a style='margin-left:3px; margin-right:3px;'  href=" + url + "?page=" + i + GetURLParms + "" + urlparms + ">" + i + "</a>")); 
  115.                         } 
  116.                     } 
  117.                     if (HasNextPage) 
  118.                     { 
  119.  
  120.                         str.Append("<a href=" + url + "?page=" + (pageindex + 1) + GetURLParms + "" + urlparms + ">下一页 </a>"); 
  121.                         str.Append("<a href=" + url + "?page=" + TotalPage + GetURLParms + "" + urlparms + ">尾页</a>"); 
  122.                     } 
  123.                     else 
  124.                     { 
  125.                         str.Append("<a href=#>下一页 </a>"); 
  126.                         str.Append("<a href=#>尾页</a>"); 
  127.                     } 
  128.                     str.Append("</div>"); 
  129.                     return str.ToString(); 
  130.                 } 
  131.                 else 
  132.                 { 
  133.                     return "<font color=red>暂无数据!</font>"
  134.                 } 
  135.  
  136.             } 
  137.         } 
  138.         #endregion 
  139.  
  140.         /// <summary> 
  141.         /// url重写 
  142.         /// </summary> 
  143.         private string GetURLParms 
  144.         { 
  145.             get 
  146.             { 
  147.                     string query = HttpContext.Current.Request.Url.Query; 
  148.                     query = Regex.Replace(query, @"\?page=\d*", "", RegexOptions.Compiled); 
  149.                     return query; 
  150.                
  151.             } 
  152.         } 
  153.  
  154.         /// <summary> 
  155.         ///判断是否有上一页 
  156.         /// </summary> 
  157.         public bool HasPreviousPage 
  158.         { 
  159.             get 
  160.             { 
  161.                 return (pageindex > 1); 
  162.             } 
  163.         } 
  164.         /// <summary> 
  165.         ///判断是否有下一页 
  166.         /// </summary> 
  167.         public bool HasNextPage 
  168.         { 
  169.             get 
  170.             { 
  171.                 return (pageindex < TotalPage); 
  172.             } 
  173.         } 
  174.     } 
  175.  
  176.     /// <summary> 
  177.     /// 分页数据类 
  178.     /// </summary> 
  179.     /// <typeparam name="T"></typeparam> 
  180.     public class PageBean<T> 
  181.     { 
  182.  
  183.         IList<T> datasource = new List<T>(); 
  184.  
  185.         public IList<T> Datasource 
  186.         { 
  187.             get { return datasource; } 
  188.             set { datasource = value; } 
  189.         } 
  190.  
  191.         int pagesum; 
  192.  
  193.         public int Pagesum 
  194.         { 
  195.             get { return pagesum; } 
  196.             set { pagesum = value; } 
  197.         } 
  198.         public PageBean(IList<T> datasource, int pagesum) 
  199.         { 
  200.             this.datasource = datasource; 
  201.             this.pagesum = pagesum; 
  202.         } 
  203.         public PageBean() 
  204.         { 
  205.             // 
  206.             // TODO: 在此处添加构造函数逻辑 
  207.             // 
  208.         } 


生成图片水印:

  1. using System; 
  2. using System.Data; 
  3. using System.Configuration; 
  4. using System.Web; 
  5. using System.Web.Security; 
  6. using System.Web.UI; 
  7. using System.Web.UI.WebControls.WebParts; 
  8. using System.Web.UI.HtmlControls; 
  9. using System.IO; 
  10. using System.Drawing; 
  11. using System.Drawing.Imaging; 
  12.  
  13. /// <summary> 
  14. /// PictureHandler 的摘要说明 
  15. /// </summary> 
  16.     public class PicHandler : IHttpHandler 
  17.     { 
  18.         public void ProcessRequest(HttpContext context) 
  19.         { 
  20.             context.Response.ContentType = "text/plain"
  21.     
  22.             string imgUrl = context.Request.PhysicalPath;//得到当前处理图片的物理路径 
  23.             if (File.Exists(imgUrl)) 
  24.             { 
  25.                 Image img = Image.FromFile(imgUrl);//通过图片路径得到图片对象 
  26.                 Image watering = Image.FromFile(context.Server.MapPath("~/themes/images/water.jpg"));//得到数字水印图片 
  27.                 Graphics g = Graphics.FromImage(img);//通过图片对象创建画布 
  28.                 g.DrawImage(watering, new Rectangle(img.Width - watering.Width, img.Height - watering.Height, watering.Width, watering.Height), 0, 0, watering.Width, watering.Height, GraphicsUnit.Pixel);//画图 
  29.                 context.Response.ContentType = "image/jpeg";//设置图片的格式 
  30.                 img.Save(context.Response.OutputStream, ImageFormat.Jpeg);//把图片保存在输出流中 
  31.                 g.Dispose();//销毁画布 
  32.                 img.Dispose();//销毁图片 
  33.                 context.Response.End(); 
  34.             } 
  35.             else 
  36.             { 
  37.                 Image defaultimg = Image.FromFile(context.Server.MapPath("~/themes/images/water.jpg"));//通过图片路径得到默认图片对象 
  38.                 Image watering = Image.FromFile(context.Server.MapPath("~/themes/images/water.jpg"));//得到数字水印图片 
  39.                 Graphics g = Graphics.FromImage(defaultimg);//通过图片对象创建画布 
  40.                 g.DrawImage(watering, new Rectangle(defaultimg.Width - watering.Width, defaultimg.Height - watering.Height, watering.Width, watering.Height), 0, 0, watering.Width, watering.Height, GraphicsUnit.Pixel);//画图 
  41.  
  42.                 context.Response.ContentType = "image/jpeg";//设置图片的格式 
  43.                 defaultimg.Save(context.Response.OutputStream, ImageFormat.Jpeg); 
  44.                 g.Dispose(); 
  45.                 defaultimg.Dispose(); 
  46.                 context.Response.End(); 
  47.             } 
  48.  
  49.         } 
  50.         public bool IsReusable 
  51.         { 
  52.             get 
  53.             { 
  54.                 return false
  55.             } 
  56.         } 
  57.     } 


防注入过滤:

  1. using System; 
  2. using System.Data; 
  3. using System.Configuration; 
  4. using System.Web; 
  5. using System.Web.Security; 
  6. using System.Web.UI; 
  7. using System.Web.UI.WebControls; 
  8. using System.Web.UI.WebControls.WebParts; 
  9. using System.Web.UI.HtmlControls; 
  10. using System.Data.SqlClient; 
  11.  
  12. /// <summary> 
  13. /// SqlCheck 的摘要说明 
  14. /// </summary> 
  15.  
  16.     public class SqlCheck 
  17.     { 
  18.        
  19.         public void CheckSql() 
  20.         { 
  21.            
  22.             string jk1986_sql = "exec↓select↓drop↓alter↓exists↓union↓and↓or↓xor↓order↓mid↓asc↓execute↓xp_cmdshell↓insert↓update↓delete↓join↓declare↓char↓sp_oacreate↓wscript.shell↓xp_regwrite↓'↓;↓--"
  23.             string[] jk_sql = jk1986_sql.Split('↓'); 
  24.             foreach (string jk in jk_sql) 
  25.             { 
  26.                 // -----------------------防 Post 注入----------------------- 
  27.                 if (System.Web.HttpContext.Current.Request.Form != null
  28.                 { 
  29.                     for (int k = 0; k < System.Web.HttpContext.Current.Request.Form.Count; k++) 
  30.                     { 
  31.                         string getsqlkey = System.Web.HttpContext.Current.Request.Form.Keys[k]; 
  32.                         string getip; 
  33.                         if (System.Web.HttpContext.Current.Request.Form[getsqlkey].ToLower().Contains(jk) == true
  34.                         { 
  35.                             System.Web.HttpContext.Current.Response.Write("<script Language=JavaScript>alert('请勿提交非法字符!');</" + "script>"); 
  36.                             System.Web.HttpContext.Current.Response.Write("非法操作!系统做了如下记录 ↓" + "<br>"); 
  37.                             if (System.Web.HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] != null
  38.                             { 
  39.                                 getip = System.Web.HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"]; 
  40.                             } 
  41.                             else 
  42.                             { 
  43.                                 getip = System.Web.HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"]; 
  44.                             } 
  45.                             System.Web.HttpContext.Current.Response.Write("操 作 I  P :" + getip + "<br>"); 
  46.                             System.Web.HttpContext.Current.Response.Write("操 作 时 间:" + DateTime.Now.ToString() + "<br>"); 
  47.                             System.Web.HttpContext.Current.Response.Write("操 作 页 面:" + System.Web.HttpContext.Current.Request.ServerVariables["URL"] + "<br>"); 
  48.                             System.Web.HttpContext.Current.Response.Write("提 交 方 式:P O S T " + "<br>"); 
  49.                             System.Web.HttpContext.Current.Response.Write("提 交 参 数:" + jk + "<br>"); 
  50.                             System.Web.HttpContext.Current.Response.Write("提 交 数 据:" + System.Web.HttpContext.Current.Request.Form[getsqlkey].ToLower() + "<br>"); 
  51.                             System.Web.HttpContext.Current.Response.End(); 
  52.                         } 
  53.                     } 
  54.                 } 
  55.                 // -----------------------防 GET 注入----------------------- 
  56.                 if (System.Web.HttpContext.Current.Request.QueryString != null
  57.                 { 
  58.                     for (int k = 0; k < System.Web.HttpContext.Current.Request.QueryString.Count; k++) 
  59.                     { 
  60.                         string getsqlkey = System.Web.HttpContext.Current.Request.QueryString.Keys[k]; 
  61.                         string getip; 
  62.                         if (System.Web.HttpContext.Current.Request.QueryString[getsqlkey].ToLower().Contains(jk) == true
  63.                         { 
  64.                             System.Web.HttpContext.Current.Response.Write("<script Language=JavaScript>alert('请勿提交非法字符!');</" + "script>"); 
  65.                             System.Web.HttpContext.Current.Response.Write("非法操作!系统做了如下记录 ↓" + "<br>"); 
  66.                             if (System.Web.HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] != null
  67.                             { 
  68.                                 getip = System.Web.HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"]; 
  69.                             } 
  70.                             else 
  71.                             { 
  72.                                 getip = System.Web.HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"]; 
  73.                             } 
  74.                             System.Web.HttpContext.Current.Response.Write("操 作 I  P :" + getip + "<br>"); 
  75.                             System.Web.HttpContext.Current.Response.Write("操 作 时 间:" + DateTime.Now.ToString() + "<br>"); 
  76.                             System.Web.HttpContext.Current.Response.Write("操 作 页 面:" + System.Web.HttpContext.Current.Request.ServerVariables["URL"] + "<br>"); 
  77.                             System.Web.HttpContext.Current.Response.Write("提 交 方 式:G E T " + "<br>"); 
  78.                             System.Web.HttpContext.Current.Response.Write("提 交 参 数:" + jk + "<br>"); 
  79.                             System.Web.HttpContext.Current.Response.Write("提 交 数 据:" + System.Web.HttpContext.Current.Request.QueryString[getsqlkey].ToLower() + "<br>"); 
  80.                             System.Web.HttpContext.Current.Response.End(); 
  81.                         } 
  82.                     } 
  83.                 } 
  84.  
  85.                 // -----------------------防 Cookies 注入----------------------- 
  86.                 if (System.Web.HttpContext.Current.Request.Cookies != null
  87.                 { 
  88.                     for (int k = 0; k < System.Web.HttpContext.Current.Request.Cookies.Count; k++) 
  89.                     { 
  90.                         string getsqlkey = System.Web.HttpContext.Current.Request.Cookies.Keys[k]; 
  91.                         string getip; 
  92.                         if (System.Web.HttpContext.Current.Request.Cookies[getsqlkey].Value.ToLower().Contains(jk) == true
  93.                         { 
  94.                             System.Web.HttpContext.Current.Response.Write("<script Language=JavaScript>alert('请勿提交非法字符!');</" + "script>"); 
  95.                             System.Web.HttpContext.Current.Response.Write("非法操作!系统做了如下记录 ↓" + "<br>"); 
  96.                             if (System.Web.HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] != null
  97.                             { 
  98.                                 getip = System.Web.HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"]; 
  99.                             } 
  100.                             else 
  101.                             { 
  102.                                 getip = System.Web.HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"]; 
  103.                             } 
  104.                             System.Web.HttpContext.Current.Response.Write("操 作 I  P :" + getip + "<br>"); 
  105.                             System.Web.HttpContext.Current.Response.Write("操 作 时 间:" + DateTime.Now.ToString() + "<br>"); 
  106.                             System.Web.HttpContext.Current.Response.Write("操 作 页 面:" + System.Web.HttpContext.Current.Request.ServerVariables["URL"] + "<br>"); 
  107.                             System.Web.HttpContext.Current.Response.Write("提 交 方 式: Cookies " + "<br>"); 
  108.                             System.Web.HttpContext.Current.Response.Write("提 交 参 数:" + jk + "<br>"); 
  109.                             System.Web.HttpContext.Current.Response.Write("提 交 数 据:" + System.Web.HttpContext.Current.Request.Cookies[getsqlkey].Value.ToLower() + "<br>"); 
  110.                             System.Web.HttpContext.Current.Response.End(); 
  111.                         } 
  112.                     } 
  113.                 } 
  114.  
  115.             } 
  116.         }  
  117.     } 

页面过滤HTML:

  1. /// <summary> 
  2. /// 过滤标记 
  3. /// </summary> 
  4. /// <param name="NoHTML">包括HTML,脚本,数据库关键字,特殊字符的源码 </param> 
  5. /// <returns>已经去除标记后的文字</returns> 
  6. public static string NoHTML(string Htmlstring) 
  7. if (Htmlstring == null
  8. return ""
  9. else 
  10. //删除脚本 
  11. Htmlstring = Regex.Replace(Htmlstring, @"<script[^>]*?>.*?</script>", "", RegexOptions.IgnoreCase); 
  12. //删除HTML 
  13. Htmlstring = Regex.Replace(Htmlstring, @"<(.[^>]*)>", "", RegexOptions.IgnoreCase); 
  14. Htmlstring = Regex.Replace(Htmlstring, @"([\r\n])[\s]+", "", RegexOptions.IgnoreCase); 
  15. Htmlstring = Regex.Replace(Htmlstring, @"-->", "", RegexOptions.IgnoreCase); 
  16. Htmlstring = Regex.Replace(Htmlstring, @"<!--.*", "", RegexOptions.IgnoreCase); 
  17.  
  18. Htmlstring = Regex.Replace(Htmlstring, @"&(quot|#34);", "\"", RegexOptions.IgnoreCase); 
  19. Htmlstring = Regex.Replace(Htmlstring, @"&(amp|#38);", "&", RegexOptions.IgnoreCase); 
  20. Htmlstring = Regex.Replace(Htmlstring, @"&(lt|#60);", "<", RegexOptions.IgnoreCase); 
  21. Htmlstring = Regex.Replace(Htmlstring, @"&(gt|#62);", ">", RegexOptions.IgnoreCase); 
  22. Htmlstring = Regex.Replace(Htmlstring, @"&(nbsp|#160);", " ", RegexOptions.IgnoreCase); 
  23. Htmlstring = Regex.Replace(Htmlstring, @"&(iexcl|#161);", "\xa1", RegexOptions.IgnoreCase); 
  24. Htmlstring = Regex.Replace(Htmlstring, @"&(cent|#162);", "\xa2", RegexOptions.IgnoreCase); 
  25. Htmlstring = Regex.Replace(Htmlstring, @"&(pound|#163);", "\xa3", RegexOptions.IgnoreCase); 
  26. Htmlstring = Regex.Replace(Htmlstring, @"&(copy|#169);", "\xa9", RegexOptions.IgnoreCase); 
  27. Htmlstring = Regex.Replace(Htmlstring, @"&#(\d+);", "", RegexOptions.IgnoreCase); 
  28. Htmlstring = Regex.Replace(Htmlstring, "xp_cmdshell", "", RegexOptions.IgnoreCase); 
  29.  
  30. //删除与数据库相关的词 
  31. Htmlstring = Regex.Replace(Htmlstring, "select", "", RegexOptions.IgnoreCase); 
  32. Htmlstring = Regex.Replace(Htmlstring, "insert", "", RegexOptions.IgnoreCase); 
  33. Htmlstring = Regex.Replace(Htmlstring, "delete from", "", RegexOptions.IgnoreCase); 
  34. Htmlstring = Regex.Replace(Htmlstring, "count''", "", RegexOptions.IgnoreCase); 
  35. Htmlstring = Regex.Replace(Htmlstring, "drop table", "", RegexOptions.IgnoreCase); 
  36. Htmlstring = Regex.Replace(Htmlstring, "truncate", "", RegexOptions.IgnoreCase); 
  37. Htmlstring = Regex.Replace(Htmlstring, "asc", "", RegexOptions.IgnoreCase); 
  38. Htmlstring = Regex.Replace(Htmlstring, "mid", "", RegexOptions.IgnoreCase); 
  39. Htmlstring = Regex.Replace(Htmlstring, "char", "", RegexOptions.IgnoreCase); 
  40. Htmlstring = Regex.Replace(Htmlstring, "xp_cmdshell", "", RegexOptions.IgnoreCase); 
  41. Htmlstring = Regex.Replace(Htmlstring, "exec master", "", RegexOptions.IgnoreCase); 
  42. Htmlstring = Regex.Replace(Htmlstring, "net localgroup administrators", "", RegexOptions.IgnoreCase); 
  43. Htmlstring = Regex.Replace(Htmlstring, "and", "", RegexOptions.IgnoreCase); 
  44.  
  45.  
  46. return Htmlstring ; 
  47.  
  48.       } 
  49.  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值