2012-05-31 188 views
4

我有一個Web應用程序和訪問數據庫的控制檯應用程序。該數據庫有2個表(A,B),其中一個(A)特定於Web應用程序。在編寫數據訪問層時,最好的方法是什麼?技術上數據訪問層應提供對所有可訪問數據的訪問。這樣做時,如果我們有單一訪問層,與A交互的方法會暴露給控制檯應用程序。在同一個數據庫中創建2個訪問層到2個表是否有意義?什麼是做這件事的好方法?數據訪問層設計

回答

1

我個人將數據訪問層單獨放在一個類和一個(或多箇中間類)中,以容納會話/由數據訪問層填充的業務實體。控制檯和Web應用程序然後與業務實體層交談。

例如:

數據訪問層

舉行ALL連接信息有關數據庫,方法來執行存儲過程,函數和查詢。這個類跟Table A and Table B

控制檯1個實體

這將舉行法/使用數據訪問層的實例來獲取相應的信息屬性。即

public List<string> GetTableAContents() { 
    var retVal = Data.RunStoredProcedure("sp_Table1Contents); 
    return retVal; 
} 

控制檯應用程序

Console1Entity ce = new ConsoleEntity(); 
var contents = ce.GetTableAContents(); 

那麼您將是基於什麼是有關該應用程序的新的WebApplication實體類。這將提供三層架構。