如何将asx值从aspx页保存到数据库?

问题描述:

MainUserControl1.Name = "";//this from ascx page
string Title;//this from aspx
 SqlConnection con = new SqlConnection(ConfigurationManager.AppSettings["dbConnection"].ToString());

        con.Open();
        SqlCommand cmd = new SqlCommand();

        cmd.Connection = con;
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.CommandText = "usp_InsertPatientAddmission";

        SqlParameter paraTitle = new SqlParameter("@Title", SqlDbType.VarChar, 50);
        paraTitle.Value = Title;
        cmd.Parameters.Add(paraTitle);//this from aspx

        SqlParameter paraName = new SqlParameter("@Name", SqlDbType.VarChar, 50);
        paraName.Value = MainUserControl1.Name;
        cmd.Parameters.Add(paraName);//is in correct format??//this from ascx page..


这是我的代码.我想将此值添加到数据库,但标题正在添加,名称字段未添加到数据库.(名称字段m调用ascx到aspx页面)..任何人都可以解决,..


hi here is my code.i want to add this values to database but title is adding and Name field is not adding to database.(name field m calling to ascx to aspx page)..can anyone solve,..

要访问用户控件中定义的表单字段,您需要在该用户控件上定义一个属性.
例如

UserControl.ascx
To access form field that is defined in user control, you need to define a property on that user control.
Eg.

UserControl.ascx
<asp:textbox id="NameTB" runat="server" />




在UserControl.ascx.cs中:




in UserControl.ascx.cs:

public string Name
{
   get { return NameTB.Text; }
}


aspx.cs
SqlParameter paraName = new SqlParameter("@Name", SqlDbType.VarChar, 50);
paraName.Value = MainUserControl1.Name;
cmd.Parameters.Add(paraName);


在ascx.cs


in ascx.cs

public string Name
   {
       get
       {
           return txtFname.Text;
       }
       set
       {
           txtFname.Text = value;

       }

   }



这是将值保存在数据库中的代码,



this s the code to save values in database,