asp.net防注入的两个自定义函数

一.如果参数全为数字:


// 检查字符串是否全为数字
public static bool IsNum(string Str)
{
    bool blResult = true;
    if (Str == "")
        blResult = false;
    else
    {
        foreach (char Char in Str)
        {
            if (!Char.IsNumber(Char))
            {
                blResult = false;
                break;
            }
        }
        if (blResult)
            if (int.Parse(Str) == 0)
                blResult = false;
    }
    return blResult;
}


应用:


string Topicid = Request.QueryString["Topicid"];
if (!IsNum(Topicid))
    Server.Transfer("Error.aspx?ErrID=404");


二.如果参数为文本.


// Html转换
public static string htmlstr(string chr)
{
    if(chr==null)
        return "";
    chr=chr.Replace("<","&lt");
    chr=chr.Replace(">","&gt");
    chr=chr.Replace("/n","<br>");
    chr=chr.Replace("/"","&quot;");
    chr=chr.Replace("'","&#39;");
    chr=chr.Replace(" ","&nbsp;");
    chr=chr.Replace("/r","");
    return(chr);
}


应用:string strClass = htmlstr(Request.QueryString["ClassName"]); 

你可能感兴趣的:(html,String,null,asp.net)