欢迎光临
我们一直在努力

用ASP.NET写你自己的代码生成器(2)。-.NET教程,Asp.Net开发

建站超值云服务器,限时71元/月

frmmain.aspx.cs

using system;
using system.collections;
using system.componentmodel;
using system.data;
using system.data.sqlclient;
using system.drawing;
using system.web;
using system.web.sessionstate;
using system.web.ui;
using system.web.ui.webcontrols;
using system.web.ui.htmlcontrols;

namespace web_test
{
    /// <summary>
    /// 作者:davi
    /// 日期:3003-03-18
    /// </summary>
    public class frmmain : system.web.ui.page
    {
        protected system.web.ui.webcontrols.label label1;
        protected system.web.ui.webcontrols.label label2;
        protected system.web.ui.webcontrols.label label4;
        protected system.web.ui.webcontrols.dropdownlist dropdownlist1;
        protected system.web.ui.webcontrols.label label5;
        protected system.web.ui.webcontrols.textbox txtservername;
        protected system.web.ui.webcontrols.textbox txtusername;
        protected system.web.ui.webcontrols.textbox txtpassword;
        protected system.web.ui.webcontrols.button button1;
        protected system.web.ui.webcontrols.dropdownlist dropdownlist2;
        protected system.web.ui.webcontrols.label label6;
        protected system.web.ui.webcontrols.label label7;
        protected system.web.ui.webcontrols.button button2;
        protected system.web.ui.webcontrols.dropdownlist dropdownlist3;
        protected system.web.ui.webcontrols.button button3;
        protected system.web.ui.webcontrols.textbox txtlayout;
        protected system.web.ui.webcontrols.button button4;
        protected system.web.ui.webcontrols.button button5;
        protected system.web.ui.webcontrols.button button6;
        private sqlconnection m_scon;
        private dataset m_ds;

        private void page_load(object sender, system.eventargs e)
        {
            m_scon = new sqlconnection();
            m_ds = new dataset();
        }

        #region web form designer generated code
        //[stathreadattribute]
        override protected void oninit(eventargs e)
        {
            //
            // codegen:该调用是 asp.net web 窗体设计器所必需的。
            //
            initializecomponent();
            base.oninit(e);
        }
        
        /// <summary>
        /// 设计器支持所需的方法 – 不要使用代码编辑器修改
        /// 此方法的内容。
        /// </summary>
        private void initializecomponent()
        {    
            this.button1.click += new system.eventhandler(this.button1_click);
            this.dropdownlist1.selectedindexchanged += new system.eventhandler(this.dropdownlist1_selectedindexchanged);
            this.button2.click += new system.eventhandler(this.button2_click);
            this.button3.click += new system.eventhandler(this.button3_click);
            this.button4.click += new system.eventhandler(this.button4_click);
            this.button5.click += new system.eventhandler(this.button5_click);
            this.button6.click += new system.eventhandler(this.button6_click);
            this.load += new system.eventhandler(this.page_load);

        }
        #endregion

        #region 显示数据库的表 button1_click
        /// <summary>
        /// 显示数据库的表
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button1_click(object sender, system.eventargs e)
        {
            try
            {
                m_scon.connectionstring = "user id="+this.txtusername.text+
                    ";password="+this.txtpassword.text+
                    ";initial catalog="+this.dropdownlist3.selecteditem.text+
                    ";data source="+this.txtservername.text;
                sqlcommand m_scmd = new sqlcommand("sp_tables",m_scon);
                m_scmd.commandtype = commandtype.storedprocedure;
                sqlparameter myparm = m_scmd.parameters.add("@table_type",sqldbtype.varchar,100);
                myparm.value = "table";
                m_scon.open();
                sqldatareader m_sdr = m_scmd.executereader();
                this.dropdownlist1.items.clear();
                while(m_sdr.read())
                {
                    if(m_sdr["table_name"].tostring()!="dtproperties")
                    {
                        listitem m_li = new listitem();
                        m_li.text = m_sdr["table_name"].tostring();
                        m_li.value = m_sdr["table_name"].tostring();
                        this.dropdownlist1.items.add(m_li);
                    }
                }
                m_sdr.close();
                m_scon.close();
            }
            catch
            {
                if(m_scon.state.tostring().toupper()=="open")
                {
                    m_scon.close();
                }
            }
        }

        #endregion

        #region show columns in a table dropdownlist1_selectedindexchanged
        /// <summary>
        /// 显示表的所有列
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void dropdownlist1_selectedindexchanged(object sender, system.eventargs e)
        {
            try
            {
                if(this.dropdownlist1.selectedindex!=-1)
                {
                    m_scon.connectionstring = "user id="+this.txtusername.text+
                        ";password="+this.txtpassword.text+
                        ";initial catalog="+this.dropdownlist3.selecteditem.text+
                        ";data source="+this.txtservername.text;
                    sqlcommand m_scmd = new sqlcommand("sp_columns",m_scon);
                    m_scmd.commandtype = commandtype.storedprocedure;
                    sqlparameter myparm = m_scmd.parameters.add("@table_name",sqldbtype.varchar,100);
                    myparm.value = this.dropdownlist1.selecteditem.value;
                    m_scon.open();
                    sqldatareader m_sdr = m_scmd.executereader();
                    this.dropdownlist2.items.clear();
                    while(m_sdr.read())
                    {
                        listitem m_li = new listitem();
                        m_li.text = m_sdr["column_name"].tostring();
                        m_li.value = m_sdr["column_name"].tostring();
                        this.dropdownlist2.items.add(m_li);
                    }
                    m_sdr.close();
                    m_scon.close();
                }
            }
            catch
            {
                if(m_scon.state.tostring().toupper()=="open")
                {
                    m_scon.close();
                }
            }
        }

        #endregion

        #region show all database button2_click
        /// <summary>
        /// 显示所有数据库
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button2_click(object sender, system.eventargs e)
        {
            try
            {
                m_scon.connectionstring = "user id="+this.txtusername.text+
                    ";password="+this.txtpassword.text+
                    ";data source="+this.txtservername.text;
                sqlcommand m_scmd = new sqlcommand("sp_databases",m_scon);
                m_scmd.commandtype = commandtype.storedprocedure;
                m_scon.open();
                sqldatareader m_sdr = m_scmd.executereader();
                this.dropdownlist1.items.clear();
                while(m_sdr.read())
                {
                    listitem m_li = new listitem();
                    m_li.text = m_sdr["database_name"].tostring();
                    m_li.value = m_sdr["database_name"].tostring();
                    this.dropdownlist3.items.add(m_li);
                }
                m_sdr.close();
                m_scon.close();        
            }
            catch
            {
                if(m_scon.state.tostring().toupper()=="open")
                {
                    m_scon.close();
                }
            }
        }

        #endregion

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 用ASP.NET写你自己的代码生成器(2)。-.NET教程,Asp.Net开发
分享到: 更多 (0)

相关推荐

  • 暂无文章