C#三層架構執行個體

來源:互聯網
上載者:User

標籤:

對於三層的概念查也查了,看也看了,下面是我找的一個關於三層的簡單一實例,真正看一下它是如何具體實現的.

我們先來一起看看實體類-Model實質:實體類就是在完成資料庫與實體類對應的功能,一個類是一張表,一個屬性是一個欄位!
using System;  using System.Collections.Generic;  using System.Linq;  using System.Text;    namespace model  {      public class User      {          public User() { }          private string _name;          public string name          {              set { _name = value; }              get { return _name; }          }        }  }  

 

再來說明一下,這個執行個體應用了設定檔來訪問資料庫,當然我們在做的時候可以使用SqlHelper,也可以將串連資料庫的這些代碼直接放在D層
<add name="ConnectionString" connectionString="Data Source=localhost;Initial Catalog=tester;User ID=sa;Password=123456" providerName="System.Data.SqlClient" />  

 

三層中的最底層-資料訪問層(DAL)  這一層要引用實體類和對Configuration的引用實質:就是對資料庫中的內容的增,刪,改,查
using System;  using System.Collections.Generic;  using System.Linq;  using System.Text;  using model;  using System.Data;  using System.Configuration;  using System.Data.SqlClient;    namespace DAL  {      public class UserDB      {          public bool User_add(model.User model)           {               string setting = ConfigurationManager.ConnectionStrings["ConnectionString"].ToString();               SqlConnection myconn=new SqlConnection(setting);               myconn.Open();               SqlCommand cmd=new SqlCommand("insert into dbo.[user]([name]) values(@name)",myconn);               cmd.Parameters.AddWithValue("@name", model.name);               if (cmd.ExecuteNonQuery()>0)               {                   return true;               }               else               {                   return false;               }           }      }  }  

 

三層中的橋樑-商務邏輯層BLL  這一層需要引用實體類和資料訪問層實質:負責處理U層的問題(本例子主要是對資料層的操作)
using System;  using System.Collections.Generic;  using System.Linq;  using System.Text;  using DAL;    namespace BLL  {              public class userBLL            {              DAL.UserDB db = new UserDB();              public bool addUser(model.User model)               {                 return db.User_add(model);               }            }     }  

 

三層中的頂層-表現層UI  這一層要引用實體類和商務邏輯層實質:具體解決做什麼的問題
using System;  using System.Collections.Generic;  using System.ComponentModel;  using System.Data;  using System.Drawing;  using System.Linq;  using System.Text;  using System.Windows.Forms;  using BLL;  using model;    namespace 登陸  {      public partial class Form1 : Form      {          public Form1()          {              InitializeComponent();          }            private void button1_Click(object sender, EventArgs e)          {              model.User thisUser = new User();               thisUser.name = TB_username.Text.ToString();               BLL.userBLL uB = new userBLL();               if (uB.addUser (thisUser))               {                  MessageBox.Show ("true");               }               else                                                                   {                   MessageBox.Show ("false");               }           }          }      }  

 

三層之間的關係:        解釋:     上述代碼中DAL主要是對資料庫中的內容的操作,在這裡就是向資料庫中添加使用者。BLL則主要是調用DAL層的操作,返回DAL層添加使用者的結果(true或者false)。這樣也就是在用戶端與資料庫中加了一個中介層,使得兩層的依賴性減小。UI層則主要完成響應使用者的需求,去調用BLL層實現的adduser方法,DAL層就是實實在在做這件事情的操作。

C#三層架構執行個體

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.