日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > C# >内容正文

C#

有史以来最简单的三层实例(C#)

發布時間:2025/3/21 C# 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 有史以来最简单的三层实例(C#) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

三層已經學了很久了,一直沒有寫博客是因為自己感覺對三層的理解還太膚淺,怕寫的不對誤導別人。當然就現在我的水平而言對于三層的理解還是不夠深刻,但是我感覺不至于誤導別人了,所以將我對于三層的一些理解寫出來,希望會對和我當初一樣迷茫的菜鳥一些幫助!

?

回想當初我學習三層的時候,在網上尋找關于三層的知識,找到了很多例子,但是感覺它們都有些復雜,不太適合剛剛接觸三層的人學習,所以我決定寫一個簡單的三層實例,下面言歸正傳。

?

簡單的三層劃分:

?

用戶登錄界面:

?

用戶名、密碼輸入正確以后提示登錄成功:

?

下面是UI層的代碼:

?

//單擊登錄按鈕private void btnLogin_Click(object sender, EventArgs e){//聲明一個Bool類型的變量用來接收登錄狀態(是否登錄成功)bool result = false;//判斷用戶名跟密碼是否為空if (txtUserName.Text == ""){MessageBox.Show("用戶名不能為空!");txtUserName.Focus();return;}if (txtPwd.Text == ""){MessageBox.Show("密碼不能為空!");txtPwd.Focus();return;}//聲明一個用戶對象User euser = new User();euser.UserName = txtUserName.Text.Trim();euser.Pwd = txtPwd.Text.Trim();LoginBLL blogin = new LoginBLL();result = blogin.BLogin(euser);//判斷是否登錄成功if (result == true){MessageBox.Show("登錄成功!");}else{MessageBox.Show("登錄失敗!");}}//單擊取消按鈕private void btnCancel_Click(object sender, EventArgs e){this.Close();}

?

  

?

?

下面是BLL(業務邏輯)層的代碼:

?

public class LoginBLL{/// <summary>/// 驗證密碼是否正確/// </summary>/// <param name="User"></param>/// <returns></returns>public bool BLogin(User User){UserDAL duser = new UserDAL();User euser = new User();euser = duser.DLogin(User);if (euser.Pwd == User.Pwd){return true;}else{return false;}}}

?

?

?

  



以下是DAL(數據訪問)層的代碼:

?

public class UserDAL{static string conString = "data source=RONALDINHO-PC;database=charge system;uid=sa;pwd=123456";SqlConnection cnn = new System.Data .SqlClient .SqlConnection (conString);/// <summary>/// 根據輸入的用戶名取出用戶密碼/// </summary>/// <param name="user"></param>/// <returns></returns>public User DLogin(User user){string sqlString = "select * from UserInfo where UserName='" + user.UserName +"'" ;User euser = new User();SqlCommand cmd =new SqlCommand(sqlString, cnn);cnn.Open();SqlDataReader read ;read = cmd.ExecuteReader();read.Read();euser .UserName = read[0].ToString();euser.Pwd = read[1].ToString();return euser ;}}

?

  

  

?

  

其實三層理解起來很簡單,就是把不同的責任劃分到不同的層,以達到解耦的目的。分層的目的就是為了讓程序變得高內聚、低耦合,使代碼更加靈活、易擴展,讓代碼更具有易用性等等。說一千道一萬也沒什么作用,只有通過實踐才能更深刻的體會三層的意義,所以希望和我一樣的菜鳥們看完這篇博客就動手去做吧!

?

PS:此博客的題目純屬為了吸引人,我不敢說我寫的這篇博客就是最簡單明了的三層實例,只是把我的理解拿出來跟大家分享一下,所以高手看到后一笑而過就好了,千萬別噴我...

?

?

源代碼下載


from:?http://www.cnblogs.com/liushuijinger/archive/2012/03/12/2391191.html

總結

以上是生活随笔為你收集整理的有史以来最简单的三层实例(C#)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。