• 三层构架实例


     下面是用户注册系统开发的三层构架实例:数据库基类采用上面提供的代码。 

    1、用户注册模块数据层开发: 
    using System; 
    using System.Data; 
    using System.Data.SqlClient; 
    using HaiSky.HtJob; 
    using System.Xml; 
    namespace HaiSky.HtJob.Accounts.AccountsData 

        public class User : HaiSky.HtJob.HaiSkyDbObject 
        { 
            public User(string newConnectionString) : base(newConnectionString) 
            {//直接路由连接字符串} 
            public int Create(string user_nm,string user_pwd) 
            { 
                int rowsAffected; 
                SqlParameter[] parameters = {new SqlParameter("@user_nm",SqlDbType.Char,16), 
                                            new  
    SqlParameter("@user_pwd",SqlDbType.Char,16)}; 
                parameters[0].Value = user_nm; 
                parameters[1].Value = user_pwd; 
                parameters[2].Direction = ParameterDirection.Output; 
                try 
                { 
                    RunProcedure("IF_user_info",parameters,out rowsAffected); 
                } 
                catch 
                {    } 
                return (int)parameters[2].Value; 
            } 
        } 

    2、用户注册商务层开发: 
    using System; 
    using System.Configuration; 
    using HaiSky.HtJob.Accounts.AccountsData; 
    namespace HaiSky.HtJob.Accounts.AccountBusiness 

        public class User : HaiSky.HtJob.HaiSkyBizObject  
        { 
            int userID; 
            string userName; 
            string userPwd; 
            string strConn; 
            public User() 
            { 
                strConn = ConfigurationSettings.AppSettings["strConn"]; 
            } 
            public int Careate() 
            { 
                AccountsData.User dataUser = new AccountsData.User(strConn); 
                userID = dataUser.Create(userName,userPwd); 
                return userID; 
            } 
            public int UserID 
            { 
                get 
                { 
                    return userID; 
                } 
                set 
                { 
                    userID = value; 
                } 
            } 
            public string UserName 
            { 
                get 
                { 
                    return userName; 
                } 
                set 
                { 
                    userName = value; 
                } 
            } 
            public string UserPwd 
            { 
                get 
                { 
                    return userPwd; 
                } 
                set 
                { 
                    userPwd = value; 
                } 
            } 
        } 

    3、 用户注册表示层开发: 
    using System; 
    using System.Collections; 
    using System.ComponentModel; 
    using System.Data; 
    using System.Drawing; 
    using System.Web; 
    using System.Web.SessionState; 
    using System.Web.UI; 
    using System.Web.UI.WebControls; 
    using System.Web.UI.HtmlControls; 
    using HaiSky.HtJob.Accounts.AccountBusiness; 

    namespace HaiSky.HtJob.Modules.Accounts 

        public class Register : System.Web.UI.Page 
        { 
            protected System.Web.UI.WebControls.TextBox TextBox1; 
            protected System.Web.UI.WebControls.TextBox TextBox2; 
            protected System.Web.UI.WebControls.Table Table1; 
            protected System.Web.UI.WebControls.Button Button1; 

            private void Page_Load(object sender, System.EventArgs e) 
            { 
                Table1.Rows[0].Cells[0].Visible = false; 
            } 
            #region Web Form Designer generated code 
            override protected void OnInit(EventArgs e) 
            { 
                InitializeComponent(); 
                base.OnInit(e); 
            }     
            private void InitializeComponent() 
            {     
                this.Button1.Click += new System.EventHandler(this.Button1_Click); 
                this.Load += new System.EventHandler(this.Page_Load); 
            } 
            #endregion 
            private void Button1_Click(object sender, System.EventArgs e) 
            { 
                int i; 
                HtJob.Accounts.AccountBusiness.User BusinessUser = new HtJob.Accounts.AccountBusiness.User(); 
                BusinessUser.UserName = TextBox1.Text; 
                BusinessUser.UserPwd = TextBox2.Text; 
                i = BusinessUser.Careate(); 
                Response.Write (i.ToString());                         //这里输出返回值 
            } 
        } 

    4、该系统调用的存储过程: 
    CREATE PROCEDURE IF_user_info  
    (@user_nm char(16),@user_pwd char(16),@user_ID int output) 
    AS 
        insert user_info(user_nm,user_pwd) values(@user_nm,@user_pwd) 
    set @user_ID = @@identity 
        IF @@ERROR > 0 
            BEGIN 
            RAISERROR ('Insert of Article failed', 16, 1)

    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/daban1/archive/2006/10/19/1341520.aspx

  • 相关阅读:
    toodifficult 题解
    Code Chef February Challenge 2019题解
    LOJ#3085. 「GXOI / GZOI2019」特技飞行(KDtree+坐标系变换)
    LOJ#3084. 「GXOI / GZOI2019」宝牌一大堆(递推)
    LOJ#3083. 「GXOI / GZOI2019」与或和(单调栈)
    LOJ#6046. 「雅礼集训 2017 Day8」爷(分块)
    LOJ#6045. 「雅礼集训 2017 Day8」价(最小割)
    LOJ#6044. 「雅礼集训 2017 Day8」共(Prufer序列)
    BZOJ4766: 文艺计算姬(Prufer序列)
    BZOJ3729: Gty的游戏(伪ETT)
  • 原文地址:https://www.cnblogs.com/tangself/p/1612892.html
Copyright © 2020-2023  润新知