因爲下面的機房收費系統重構本身要用VB.NET進行重構,因此在敲三層登陸的時候,實踐了一份C#版三層登陸,接着就是VB.NET版的三層登陸。話說還有七層登陸,一會兒感受三層又矮小了。萬丈高樓平地起,都得從最底層走起~html
<span style="font-family:KaiTi_GB2312;font-size:18px;">Public Class UserInfo '定義兩個私有屬性 Private UserID As String Private Password As String '定義屬性過程,經過屬性過程,容許其餘類訪問 Public Property ID As String Get Return UserID End Get Set(value As String) UserID = value End Set End Property Public Property PWD As String Get Return Password End Get Set(value As String) Password = value End Set End Property End Class</span>
<span style="font-family:KaiTi_GB2312;font-size:18px;">Public Class FrmLogin Private Sub btnExit_Click(sender As Object, e As EventArgs) Handles btnExit.Click End End Sub Private Sub btnOK_Click(sender As Object, e As EventArgs) Handles btnOK.Click '實例化傳實體對象; Dim LoginUser As New Login.Model.UserInfo '用來接收用戶的登陸名和密碼; '實例化B層對象 Dim Bcheck As New Login.BLL.LoginManager '將文本框中的字符串送給實體對象login.user使實體對象可以帶上參數; LoginUser.ID = txtUsername.Text() LoginUser.PWD = txtPassword.Text() If Bcheck.selectUIandModel(LoginUser) Then MsgBox("恭喜你,成功了!Amazing") Else MsgBox("這也太笨了吧,連這個都作很差,怎麼談是精英?") End If End Sub End Class</span>
<span style="font-family:KaiTi_GB2312;font-size:18px;">Imports Login.Model Imports Login.DAL.UserDAO Public Class LoginManager 'B層業務處理邏輯:承接U層的參數和傳遞到D層; Function selectUIandModel(ByVal user As Login.Model.UserInfo) As Boolean Dim DAOuser As New Login.DAL.UserDAO '實例化D層的UserDAO類 Dim Moderuser As New Login.Model.UserInfo '實例化實體層UserInfo類 Moderuser.ID = user.ID Moderuser = DAOuser.selectUserInfoFormUserInfoTable(Moderuser) '引用了DAL層的方法 If Moderuser.PWD = user.PWD Then Return True Else Return False End If End Function End Class</span>
<span style="font-family:KaiTi_GB2312;font-size:18px;">Imports System.Data.SqlClient Imports Login.Model Public Class UserDAO 'server是服務器的名稱,能夠是local,IP地址,計算機名稱; 'database是數據庫的名稱; 'userid是登陸的用戶名; 'pwd是登陸的密碼; Dim sqlConnectStr As String = "server =ZLT;database=Login;uid=sa;pwd=123" '下面能夠用windows身份驗證登陸; 'Dim sqlConnectStr1 As String = "server=ZLT;database=Login;integrated Security=true" Dim sqlConnect1 As SqlConnection = New SqlConnection(sqlConnectStr) Function selectUserInfoFormUserInfoTable(ByVal user As Login.Model.UserInfo) As Login.Model.UserInfo Dim sql As String = "select * from Users where Username='" & user.ID & "'" Dim cmd As SqlCommand = New SqlCommand(sql, sqlConnect1) '定義sqlcommand對象; Dim read As SqlDataReader '定義sqldatareader對象; Dim UserDataTable As New DataTable '定義一個Datatable對象; Dim user1 As New Login.Model.UserInfo Try sqlConnect1.Open() read = cmd.ExecuteReader UserDataTable.Load(read) user1.ID = UserDataTable.Rows(0)("Username") user1.PWD = UserDataTable.Rows(0)("Password") Return user1 Catch ex As Exception user1.PWD = "" Return user1 Finally If Not IsNothing(sqlConnect1) Then sqlConnect1.Close() End If End Try End Function End Class</span>
一、人總得學會長大,三層也須要不斷的創新;sql
二、萬變不離其宗,變是永遠不變的。數據庫
點我——>C#版三層登陸windows
感謝您的寶貴時間~~~服務器