在Asp.Net网页之间发布数据

时间:2012-01-31 06:04:19

标签: asp.net forms post

我有一个字符串列表,它们是在imagebutton_click方法上生成的。我希望能够在其他网页中使用此列表。

我怎么也不确定如何在两页之间发布。

我在下面有以下代码:

 protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
        {

            RadGrid rg = RadGrid1;
            //Get selected rows
            GridItemCollection gdc = (GridItemCollection)rg.SelectedItems;
            foreach (GridItem gi in gdc)
            {
                if (gi is GridDataItem)
                {

                    GridDataItem gdi = (GridDataItem)gi;

                    if (!string.IsNullOrEmpty(gdi["Email"].Text))
                    {

                        string client = gdi["Email"].Text;
                        //Creating a List of Clients to be Emailed
                        emailList.Add(email);

                    }
                }
                        //Enable the Prepare Email Page
                       PageView2.Selected = true;
            }


 protected void ImageButton2_Click(object sender, ImageClickEventArgs e)
        {

            if (emailList.Count != 0)
            {
                for (int i = 0; i < emailList.Count; i++)
                {
                    _to = emailList[i].ToString() + ";";

                }

            }
            else
            {
                _to = emailList[1].ToString();

            }


            //Processing Client Email
            string _from = sec.GetCurrentUserEmail("test");
            string _cc = "";
            string _subject = SubjectTB.Text;
            string _body = EmailEditor.Content;
            string _tempTo = sec.GetCurrentUserEmail("temp");
            string _msg = sec.SendMail(_tempTo, _cc, _from, _subject, _body, "");

            if (_msg == "success")
            {
                //Thank the user and record mail was delivered sucessfully 
                TestPanel.Visible = true;

            }

        }

如何将emailList的值传递给ImageButton2_click(对象发送者,ImageClickEventArgs e)。目前它只传递一个空值。我收集我需要使用HTML表单来执行请求。谢谢。

2 个答案:

答案 0 :(得分:1)

我猜测emailList是一个私有变量?你不能将它添加到LoadControlState和SaveControlState,以便稍后可用于ImageButton2_Click吗?

以下是一个示例:http://msdn.microsoft.com/en-us/library/system.web.ui.control.loadcontrolstate%28v=vs.80%29.aspx

另一种可能性是隐藏字段,可能是简单的方式,但不安全。

答案 1 :(得分:0)

您可以在ASP.Net here中了解状态管理。对于你的情况,如果button1和button2在同一个aspx页面中,Viewstate将是一个好主意。如果它们位于不同的页面,则使用会话状态管理。