???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????λ??
???????????????????????????
???????????SQL????????????????д???????????
?????????????SQL???????????????????Param
??????????????????洢?????????????????????????
???????????SQL??javascript???????????????????????????д??????????????????????????????????????????????????????3?????
????C#??SQL??????
??????Web.config????У? < appSettings>????????????????????
????< appSettings>
????< add key="safeParameters" value="OrderID-int32??CustomerEmail-email??ShippingZipcode-USzip" />
????< /appSettings>
????????key?? < saveParameters>???????"OrderId-int32"???????"-"?????????????????磺OrderId???????int32????????????
????C#??SQL???????
??????Global.asax????????????Σ?
protected void Application_BeginRequest(Object sender?? EventArgs e){
String[] safeParameters = System.Configuration.ConfigurationSettings.AppSettings["safeParameters"].ToString().Split('??');
for(int i= 0 ;i <   safeParameters.Length; i++){
String parameterName = safeParameters[i].Split('-')[0];
String parameterType = safeParameters[i].Split('-')[1];
isValidParameter(parameterName?? parameterType);
}
}
public void isValidParameter(string parameterName?? string parameterType){
string parameterValue = Request.QueryString[parameterName];
if(parameterValue == null) return;
if(parameterType.Equals("int32")){
if(!parameterCheck.isInt(parameterValue)) Response.Redirect("parameterError.aspx");
}
else if (parameterType.Equals("USzip")){
if(!parameterCheck.isUSZip(parameterValue)) Response.Redirect("parameterError.aspx");
}
else if (parameterType.Equals("email")){
if(!parameterCheck.isEmail(parameterValue)) Response.Redirect("parameterError.aspx");
}
}