XML,Dictionary的应用---有关于页面之间接收和传递参数的又一解决方案 [原创]
*此次的程序主要解决了页面之间接收和传递多个参数的问题。
思路:以XML配置化的思想编写此DEMO的。
            主要对项目中参数接收和传递做到可配置化,宜维护。。.
文字流程图:1.A页面Response.Write一个Form到B页面;
                        2.B页面接收之后,B页面中有"下一步按钮",Press Button之后,提交从A Page接收到C Page.
                   
A Page:-----Default.aspx
B.Page------WebForm1.aspx
C.Page------WebForm2.aspx
CommonClass -----ParamClass
PageBaseClass-----BaseIPage
XML-----ParamDictionary.xml
以下是代码,供参考
ParamDictionary.xml
 <ParamsDictionary>
<ParamsDictionary> <Param key="orderid" value=""/>
  <Param key="orderid" value=""/> <Param key="FAV_FID1" value=""/>
  <Param key="FAV_FID1" value=""/> <Param key="FAV_Status1" value=""/>
  <Param key="FAV_Status1" value=""/> <Param key="FAV_NeedCheck1" value=""/>
  <Param key="FAV_NeedCheck1" value=""/> <Param key="FAV_FID2" value=""/>
  <Param key="FAV_FID2" value=""/> <Param key="FAV_Status2" value=""/>
  <Param key="FAV_Status2" value=""/> <Param key="FAV_NeedCheck2" value=""/>
  <Param key="FAV_NeedCheck2" value=""/> <Param key="FAV_CheckLine" value=""/>
  <Param key="FAV_CheckLine" value=""/> <Param key="FlightWay" value=""/>
  <Param key="FlightWay" value=""/> <Param key="HomeCity" value=""/>
  <Param key="HomeCity" value=""/> <Param key="DestCity1" value=""/>
  <Param key="DestCity1" value=""/> <Param key="DDatePeriod1" value=""/>
  <Param key="DDatePeriod1" value=""/> <Param key="startPeriod" value=""/>
  <Param key="startPeriod" value=""/> <Param key="DestCity2" value=""/>
  <Param key="DestCity2" value=""/> <Param key="startPeriod2" value=""/>
  <Param key="startPeriod2" value=""/> <Param key="ADatePeriod1" value=""/>
  <Param key="ADatePeriod1" value=""/> <Param key="TicketAgency_List" value=""/>
  <Param key="TicketAgency_List" value=""/> <Param key="ChildType" value=""/>
  <Param key="ChildType" value=""/> <Param key="Quantity" value=""/>
  <Param key="Quantity" value=""/> <Param key="DSeatClass" value=""/>
  <Param key="DSeatClass" value=""/> <Param key="AirlineChoice" value=""/>
  <Param key="AirlineChoice" value=""/> <Param key="EMoneyIDList" value=""/>
  <Param key="EMoneyIDList" value=""/> <Param key="GetNeedGuarantee" value=""/>
  <Param key="GetNeedGuarantee" value=""/> <Param key="IsSubmitTempOrder" value=""/>
  <Param key="IsSubmitTempOrder" value=""/> <Param key="NoSignupLogin" value=""/>
  <Param key="NoSignupLogin" value=""/> </ParamsDictionary>
</ParamsDictionary>
 public partial class _Default : System.Web.UI.Page
    public partial class _Default : System.Web.UI.Page {
    { protected void Page_Load(object sender, EventArgs e)
        protected void Page_Load(object sender, EventArgs e) {
        { //Test Data
            //Test Data string responseString =
            string responseString =  "<Form id=\"frmTemp\" action=\"WebForm1.aspx\" method=\"post\">" +
                "<Form id=\"frmTemp\" action=\"WebForm1.aspx\" method=\"post\">" + "<input type=\"hidden\" name=\"orderid\" value=\"1111\">" +
                "<input type=\"hidden\" name=\"orderid\" value=\"1111\">" + "<input type=\"hidden\" name=\"FAV_FID1\" value=\"2222\">" +
                "<input type=\"hidden\" name=\"FAV_FID1\" value=\"2222\">" + "<input type=\"hidden\" name=\"FAV_Status1\" value=\"3333\">" +
                "<input type=\"hidden\" name=\"FAV_Status1\" value=\"3333\">" + "<input type=\"hidden\" name=\"FAV_NeedCheck1\" value=\"4444\">" +
                "<input type=\"hidden\" name=\"FAV_NeedCheck1\" value=\"4444\">" + "<input type=\"hidden\" name=\"FAV_FID2\" value=\"5555\">" +
                "<input type=\"hidden\" name=\"FAV_FID2\" value=\"5555\">" + "<input type=\"hidden\" name=\"FAV_Status2\" value=\"6666\">" +
                "<input type=\"hidden\" name=\"FAV_Status2\" value=\"6666\">" + "<input type=\"hidden\" name=\"FAV_NeedCheck2\" value=\"7777\">" +
                "<input type=\"hidden\" name=\"FAV_NeedCheck2\" value=\"7777\">" + "<input type=\"hidden\" name=\"FAV_CheckLine\" value=\"8888\">" +
                "<input type=\"hidden\" name=\"FAV_CheckLine\" value=\"8888\">" + "<input type=\"hidden\" name=\"FlightWay\" value=\"9999\">" +
                "<input type=\"hidden\" name=\"FlightWay\" value=\"9999\">" + "<input type=\"hidden\" name=\"HomeCity\" value=\"aaaa\">" +
                "<input type=\"hidden\" name=\"HomeCity\" value=\"aaaa\">" + "<input type=\"hidden\" name=\"DestCity1\" value=\"bbbbb\">" +
                "<input type=\"hidden\" name=\"DestCity1\" value=\"bbbbb\">" + "<input type=\"hidden\" name=\"DDatePeriod1\" value=\"ccccc\">" +
                "<input type=\"hidden\" name=\"DDatePeriod1\" value=\"ccccc\">" + "<input type=\"hidden\" name=\"startPeriod\" value=\"eeee\">" +
                "<input type=\"hidden\" name=\"startPeriod\" value=\"eeee\">" + "<input type=\"hidden\" name=\"DestCity2\" value=\"ffff\">" +
                "<input type=\"hidden\" name=\"DestCity2\" value=\"ffff\">" + "<input type=\"hidden\" name=\"startPeriod2\" value=\"ggggg\">" +
                "<input type=\"hidden\" name=\"startPeriod2\" value=\"ggggg\">" + "<input type=\"hidden\" name=\"ADatePeriod1\" value=\"qqqq\">" +
                "<input type=\"hidden\" name=\"ADatePeriod1\" value=\"qqqq\">" + "<input type=\"hidden\" name=\"TicketAgency_List\" value=\"wwwww\">" +
                "<input type=\"hidden\" name=\"TicketAgency_List\" value=\"wwwww\">" + "<input type=\"hidden\" name=\"ChildType\" value=\"eeeee\">" +
                "<input type=\"hidden\" name=\"ChildType\" value=\"eeeee\">" + "<input type=\"hidden\" name=\"Quantity\" value=\"iiiiii\">" +
                "<input type=\"hidden\" name=\"Quantity\" value=\"iiiiii\">" + "<input type=\"hidden\" name=\"DSeatClass\" value=\"jjjjj\">" +
                "<input type=\"hidden\" name=\"DSeatClass\" value=\"jjjjj\">" + "<input type=\"hidden\" name=\"AirlineChoice\" value=\"ppppp\">" +
                "<input type=\"hidden\" name=\"AirlineChoice\" value=\"ppppp\">" + "<input type=\"hidden\" name=\"EMoneyIDList\" value=\"vvvvv\">" +
                "<input type=\"hidden\" name=\"EMoneyIDList\" value=\"vvvvv\">" + "<input type=\"hidden\" name=\"GetNeedGuarantee\" value=\"xxxxxx\">" +
                "<input type=\"hidden\" name=\"GetNeedGuarantee\" value=\"xxxxxx\">" + "<input type=\"hidden\" name=\"IsSubmitTempOrder\" value=\"sssss\">" +
                "<input type=\"hidden\" name=\"IsSubmitTempOrder\" value=\"sssss\">" + "<input type=\"hidden\" name=\"NoSignupLogin\" value=\"llllll\">" +
                "<input type=\"hidden\" name=\"NoSignupLogin\" value=\"llllll\">" +
 "</form><script language=\"javascript\">document.getElementById(\"frmTemp\").submit();</script>";
                "</form><script language=\"javascript\">document.getElementById(\"frmTemp\").submit();</script>";
 Response.Write(responseString);
            Response.Write(responseString); }
        } }
    }
 public partial class WebForm1 : BaseIPage
 public partial class WebForm1 : BaseIPage {
    { private ParamClass paramClass = new ParamClass();
        private ParamClass paramClass = new ParamClass();
 private BaseIPage basePage = new BaseIPage();
        private BaseIPage basePage = new BaseIPage();
 protected void Page_Load(object sender, EventArgs e)
        protected void Page_Load(object sender, EventArgs e) {
        { NameValueCollection _hiddenVariables = new NameValueCollection();
            NameValueCollection _hiddenVariables = new NameValueCollection();
 //Check RequestForm
            //Check RequestForm if (paramClass.CheckFormIsNull(Request.Form) == true)
            if (paramClass.CheckFormIsNull(Request.Form) == true) {
            { //从RequestForm中取值,并存放到Dictionary
                //从RequestForm中取值,并存放到Dictionary Dictionary<String, String> paramsDictionary = paramClass.SaveParamsToDictionary(Request.Form, basePage.XMLPath);
                Dictionary<String, String> paramsDictionary = paramClass.SaveParamsToDictionary(Request.Form, basePage.XMLPath);
 //输出hidden到Page
                //输出hidden到Page paramClass.WriteHiddenField(paramClass.ParseTempString(paramsDictionary, _hiddenVariables), Page.ClientScript);
                paramClass.WriteHiddenField(paramClass.ParseTempString(paramsDictionary, _hiddenVariables), Page.ClientScript); }
            } }
        }
 protected void Button1_Click(object sender, EventArgs e)
        protected void Button1_Click(object sender, EventArgs e) {
        { //Check RequestForm
            //Check RequestForm if (paramClass.CheckFormIsNull(Request.Form) == true)
            if (paramClass.CheckFormIsNull(Request.Form) == true) {
            { //从RequestForm中取值,并存放到Dictionary
                //从RequestForm中取值,并存放到Dictionary Dictionary<String, String> paramsDictionary = paramClass.SaveParamsToDictionary(Request.Form, basePage.XMLPath);
                Dictionary<String, String> paramsDictionary = paramClass.SaveParamsToDictionary(Request.Form, basePage.XMLPath);
 //跳转下一页,并传递参数
                //跳转下一页,并传递参数 //string url = "http://" + ViewState["ServerName"].ToString() + "/Domestic/ConfirmOrder.aspx";
                //string url = "http://" + ViewState["ServerName"].ToString() + "/Domestic/ConfirmOrder.aspx"; Response.Write(paramClass.ParseTempString(paramsDictionary, "WebForm2.aspx"));
                Response.Write(paramClass.ParseTempString(paramsDictionary, "WebForm2.aspx")); }
            } }
        } }
    }
 public partial class WebForm2 : BaseIPage
 public partial class WebForm2 : BaseIPage {
    { private ParamClass paramClass = new ParamClass();
        private ParamClass paramClass = new ParamClass();
 private BaseIPage basePage = new BaseIPage();
        private BaseIPage basePage = new BaseIPage();
 protected void Page_Load(object sender, EventArgs e)
        protected void Page_Load(object sender, EventArgs e) {
        { NameValueCollection _hiddenVariables = new NameValueCollection();
            NameValueCollection _hiddenVariables = new NameValueCollection();
 //Check RequestForm
            //Check RequestForm if (paramClass.CheckFormIsNull(Request.Form) == true)
            if (paramClass.CheckFormIsNull(Request.Form) == true) {
            { //从RequestForm中取值,并存放到Dictionary
                //从RequestForm中取值,并存放到Dictionary Dictionary<String, String> paramsDictionary = paramClass.SaveParamsToDictionary(Request.Form, basePage.XMLPath);
                Dictionary<String, String> paramsDictionary = paramClass.SaveParamsToDictionary(Request.Form, basePage.XMLPath);
 //输出hidden到Page
                //输出hidden到Page paramClass.WriteHiddenField(paramClass.ParseTempString(paramsDictionary, _hiddenVariables), Page.ClientScript);
                paramClass.WriteHiddenField(paramClass.ParseTempString(paramsDictionary, _hiddenVariables), Page.ClientScript); }
            } }
        } }
    } public class ParamClass
 public class ParamClass {
    { CheckFormIsNull
        CheckFormIsNull
 SaveParamsToDictionary
        SaveParamsToDictionary
 ParamDictionary
        ParamDictionary
 ParseTempString
        ParseTempString
 WriteHiddenField
        WriteHiddenField }
    } public class BaseIPage : System.Web.UI.Page
  public class BaseIPage : System.Web.UI.Page {
    { /// <summary>
        /// <summary> /// XmlPath
        /// XmlPath /// </summary>
        /// </summary> public String XMLPath
        public String XMLPath {
        { get
            get {
            { return Server.MapPath("~/ParamDictionary.xml");
                return Server.MapPath("~/ParamDictionary.xml"); }
            } }
        } }
    } 
                    
                     
                    
                 
                    
                
 
    
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号