首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

不明白

2011-12-17 
不明白!在工程的App_Code下面有一个DataCon.cs公共类文件,其中有函数:publicSqlConnectiongetcon(){string

不明白!
在工程的App_Code下面有一个DataCon.cs公共类文件,
其中有函数:
        public   SqlConnection   getcon()
        {
                string   strCon   =   "Data   Source=(local);DataBase=db_Examination;User   ID=sa;PWD= ";
                SqlConnection   sqlCon   =   new   SqlConnection(strCon);
                return   sqlCon;
        }
       
        public   bool   ecDropDownList(DropDownList   DDL,string   sqlstr3,string   DTF,string   DVF)
        {
                SqlConnection   con   =   this.getcon();
                con.Open();
                SqlDataAdapter   mydataadapter   =   new   SqlDataAdapter(sqlstr3,   con);
                DataSet   mydataset   =   new   DataSet();
                mydataadapter.Fill(mydataset);
                DDL.DataSource   =   mydataset;
                DDL.DataTextField   =   DTF;
                DDL.DataValueField   =   DVF;
                try
                {
                        DDL.DataBind();
                        return   true;
                }
                catch
                {
                        return   false;
                }
                finally
                {
                        con.Close();
                }
        }

我在页面上放一个DropDownList和一个Button控件,后台代码为:
  Datacon   dataconn   =   new   Datacon();
        protected   void   Page_Load(object   sender,   EventArgs   e)
        {
                if   (!IsPostBack)
                {
                        dataconn.ecDropDownList(DropDownList1,   "select   *   from   tb_Profession ",   "Name ",   "ID ");
        }
        protected   void   Button1_Click(object   sender,   EventArgs   e)
        {
                Response.Write(DropDownList1.SelectedValue);


        }

运行后选择DropDownList1中的某个项后一松手总是又回到头一项,这样点击Button后总是显示 '0 ',如果去掉dataconn.ecDropDownList(DropDownList1,   "select   *   from   tb_Profession ",   "Name ",   "ID ");这一句改为:
string   strCon   =   "Data   Source=(local);DataBase=db_Examination;User   ID=sa;PWD=   ";
                        SqlConnection   sqlCon   =   new   SqlConnection(strCon);
                        sqlCon.Open();
                        SqlDataAdapter   da   =   new   SqlDataAdapter( "select   *   from   tb_profession ",   sqlCon);
                        DataSet   ds   =   new   DataSet();
                        da.Fill(ds);
                        DropDownList1.DataSource   =   ds;
                        DropDownList1.DataTextField   =   "Name ";
                        DropDownList1.DataValueField   =   "ID ";
                        DropDownList1.DataBind();
                        sqlCon.Close();

就一切正常,Why?

[解决办法]
1.
运行后选择DropDownList1中的某个项后一松手总是又回到头一项,
----------------------------------------
是不是设置了 AutoPostBack = true ?
你在 SelectedIndexChanged 事件做了什么?

2.
没发现这样的 "封装 "有什么意义?

热点排行