在web開發中常常用到工廠模式三層架構,現在也在winform中應用這種架構方式,嘗試了很多,也模仿了經典例子petshop,但是還是不行,也參考了網上的一些例子。現在把我這個例子的整個製作過程簡單的介紹一下。(由於本例子是介紹三層結構,所以只是簡單的應用,如果你覺得這種方式好,請自己實現其他模組)
結構:-------pmis--------主程式**
表示層,負責應用程式的表現形式、使用者體驗等。
-------dalfactory-----抽象工廠
抽象工廠,用於建立各種資料物件的方法,這裡有配置檔案和反射的運用。
-------idal--------資料介面層(控制是選擇什麼型別的資料庫)
資料操作介面,資料訪問層實現其介面並重寫它(體現了面向介面的程式設計思想)。
-------bll------
處理應用程式的業務邏輯,被表示層呼叫。
-------model-------構造模型(對應資料庫字段)
model程式集,存放實體類,用於資料訪問層和邏輯層呼叫
-------sqlserverdal----sqlserver資料訪問層
資料訪問層,實現具體的select、update、delete....操作,重寫idal介面。
-------dbutility----公共資料訪問層
資料處理層,實現具體的executereader,executedatatable,executenonquery等。
-------utility----公共層
實現從配置檔案中讀取資料庫聯接字串。
1、資料庫結構
資料庫名pmis
表admin
[id] [bigint] 編號
[name] [varchar](10) 名稱
[password] [varchar](100) 密碼
略......
建表語句
create table [dbo].[admin](
[id] [bigint] identity(1,1) not null,
[name] [varchar](10) collate chinese_prc_ci_as not null,
[password] [varchar](100) collate chinese_prc_ci_as not null,
[purviewid] [int] not null,
[remember] [int] null,
[autorun] [int] null,
[departmentsid] [bigint] null,
constraint [pk_管理員_1] primary key clustered
([id] asc
) on [primary]
) on [primary]
2、接著建立資料庫模型
model
#region 內部成員字段
private int _id;
private string _name;
private string _password;
略...
#endregion
#region 方法
public admininfo()
public admininfo(string username, string password)
#endregion
3、建立dalfactory-----抽象工廠
public static idal.iadmin create()
4、建立idal--------資料介面層
public inte***ce iadmin
5、建立utility----公共層
public static string connectionstring()
6、建立dbutility----公共資料訪問層和sqlserver資料訪問層
dbutility中建立sqlhelper類
sqlserverdal的admin類需要繼承iadmin
public class admin:iadmin
{}admin類主要實現使用者登陸功能
7、建立業務邏輯曾bll
方法public static admininfo login(string username, string password){}
在主程式的窗體中新增控制項,為按鈕新增事件
if (bll.admin.login(引數) == null)
else
三層架構的基本例子
具體的概念就不說了。主要是讓理解了三層架構的當做參考 一 mdl namespace mdl set public string product name set endregion 二 dal 主要分為 獲取 主要用來取值 列表 主要用來查詢 修改和增加以及刪除操作 用到的命名空間有 using ...
移動開發三層架構和例子
首先要說說為什麼要有這玩意,如果不分層的話豈不是更快的連線資料庫?答案確實是更快,不分層速度會有提公升。但是綜合考慮,分層了比不分層有點多了太多,雖然有犧牲,但是三層會有相當大的拓展性以及特別多的優點。我們使用三層的目的是為了 高內聚,低耦合 的思想。下邊就來說一說三層架構的優點,以及缺點。1 開發...
c mysql三層架構例項 三層架構例項
一 概要 這篇部落格,準備用乙個小demo來介紹應該實現三層架構。三層架構只是分層的一種經典形式,到底分幾層,要依具體情況而定,考慮到系統的複雜程度,和後期的可維護性,完全可以分四層,五層,甚至六層,七層。二 demo 1 實現語言 vb.net 2 需求 學校機房收費系統 中的乙個功能 操作員為學...