在aspx网页和类之间传递值

时间:2011-05-03 08:58:04

标签: c# asp.net class

我想知道如何从另一个cs文件中的某个aspx页面调用Label。例如:

protected void Button1_Click(object sender, EventArgs e)
    {
        Test1.Insert1(this);
    }

我在Something.aspx.cs文件中的代码从我创建的另一个cs文件中调用一个方法,如下所示:

public static class Test1 
{
    public static void Insert1(System.Web.UI.Page Ins)

     {
        string conn = "Data Source=pc-...";
        System.Data.SqlClient.SqlConnection sqlConn = new System.Data.SqlClient.SqlConnection(conn);
        if (Page.IsValid)
        {
            try
            {
                sqlConn.Open();
                Ins.LabelAdd.Text = "Worked!";
                System.Data.SqlClient.SqlCommand myCommand = new System.Data.SqlClient.SqlCommand("INSERT INTO ... ", sqlConn);
                myCommand.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                Ins.LabelAdd.Text = "Error! " + ex;
            }
            finally
            {
                sqlConn.Close();
            }
        }
    }
}

但这不起作用。我之前能够在会话中做到这一点,但这不起作用。我无法调用我在Something.aspx页面中使用的LabelAdd。关于如何解决这个问题的任何想法?谢谢。

1 个答案:

答案 0 :(得分:1)

您需要传递控件参考,如...

public static void Insert1(Label lblId)

另请在您的课程中添加using System.Web.UI.WebControls;