三層架構之簡單工廠改造抽象工廠中配置檔案的新增

2021-08-26 22:41:53 字數 1724 閱讀 5907

在上次說到的

的登入的例子中新增配置檔案,當時陰差陽錯的通過編譯並顯示登

錄成功,其實是負負為正導致了編譯成功。事實上在這個例子中並沒有成功新增配置檔案,在這次重構機房收費系統的時候在d層添

加的簡單工廠改造的抽象工廠再加上配置檔案,遇到了很大的問題。

number one

錯誤讀取配置檔案失敗!

讀取配置檔案裡的

dbstring

dimstrdb

asstring

=system.configuration.

configurationsettings

"dbstring")

配置檔案中。

<

>

<

addkey="

connstr

"value="

datasource=192.168.24.169;initialcatalog=lfsfxycomputersys;userid=sa;pwd=123456

">

add>

<

addkey="

dbstring

"value="

sql"

>

add>

>

工廠中。

function

createuserinfo()

asiuser

return

ctype

(assembly

.load(

"dal"

).createinstance(

"dal.user"

&strdb),

iuser

)end

function

確定例項化哪個資料庫。

assembly

.load(

"dal"

).createinstance(

"dal.user"

&strdb)

是因為我的資料庫起名錯誤,沒有加上sql。

number two

dll的引用錯誤!

在改正了上面的錯誤後,再次除錯,仍然是不成功,因為在第一次中改變的dal.dll是手動的新增到ui層。而改動的dal中的usersql後生成的dal動態鏈結庫並沒有同時改變~。而

反射要求在**的bin資料夾中有已經編譯好的.dll檔案,並且保持名稱和編譯前類庫的名稱一致

。開始在配置檔案的時候,把配置檔案放到了

b中,提示錯誤,上網查過後才發現,應該是把配置檔案放到

ui層中,而為什麼要放到

ui中,因為程式是從

ui中啟動的吧,總之配置檔案是要放到最高層。

number thre

為什麼要加配置檔案?

從下圖中你就會有所發現了。

而我們用簡單工廠改造的抽象工廠,之後在這基礎上改造

dalfactory

加上配置檔案,這個過程

更加完美的實現了解耦,使得

b完全的不認識

d,使得

dalfactory與d

分離,dll

的直接依賴變成間接依賴。

三層,介面,簡單工廠,抽象工廠

我們做專案的時候通常用以下幾種架構 一.依賴三層進行開發 專案中有sqlserverdal,bll這倆個類庫,sqlserverdal有這樣乙個類customerdal.cs類,在bll層呼叫dal層如下 sqlserverdal.customerdal dal new sqlserverdal.c...

三層架構與簡單工廠模式

3層即所謂 模式 檢視 控制器 檢視 view 代表使用者互動介面 模型 model 就是業務流程 狀態的處理以及業務規則的制定 控制 controller 可以理解為從使用者接收請求,將模型與檢視匹配在一起,共同完成使用者的請求 典型案例 基於反射工廠的三層架構 設計時一般所分模組 dal 資料庫...

簡單工廠與三層架構(creator)

什麼是設計模式 設計模式是對特定場景下解決類和物件相互通訊的描述 乙個模式含有4個基本要素,名字,問題描述,解決方案和效果 design pattern 設計模式是一套被反覆使用,多數人知曉,設計經驗的總結 簡單工廠 負責根據我們傳入的引數來建立我們需要的物件,優點 體積小,只有乙個工廠類 缺點 不...