2013-04-18 78 views
-2

我們正在開發一個基於web的web應用程序,例如,如果我想部署同一個web應用程序,MS Access作爲後端或Sql作爲後端,數據訪問它應該使用的層應該是可配置的。支持多個數據庫的ASP.NET Web應用程序

如果我去下面的架構

型號

Employee 
    ID 
    Name 

DAL

EmployeeAccessDb (Uses inline queries) 
    GetAll 
    GetByID 
    Insert 
    Update 
    Delete 

EmployeeSqlDb (Uses stored procedures) 
    GetAll 
    GetByID 
    Insert 
    Update 
    Delete 

頁(使用EmployeeAccessDb/EmployeeSqlDb)

ObjectDataSource SelectMethod="GetAll" TypeName=" <EmployeeAccessDb/EmployeeSqlDb>" 
Insert 
Update 
Delete 

所以,如果我使用Access如後端頁面應該使用Access DAL,如果我使用Sql頁面,則應該使用SQL DAL。

請讓我知道如何使這個可配置。

回答

1

取悅你的web.config配置和在你的DAL讀取值形成的web.config,使通話所必要的對數據庫

你需要添加引用System.Configuration。您應該使用ConfigurationManager中

String Activedatabase = ConfigurationManager.AppSettings["ActiveDatabase"]; 

web.config文件看起來像這樣

<appSettings> 
    <add key="ActiveDatabase" value="SQLDB"/> 
    </appSettings>