ASP.NET 預設以 SQL SERVER 做為管理驗證的資料庫,但絕大部分的網頁空間並不支援 SQL SERVER 資料庫,若能以 ACCESS做為管理驗證的資料庫將大幅提升 ASP.NET 的實用性。
l 準備工作
連結到「http://msdn.microsoft.com/zh-cn/asp.net/aa336558(en-us).aspx」網頁,在右側一欄的Downloads下,點擊下載你會得到一個文件名為sampleaccessproviders.vsi的模板安裝文件。
首先把sampleaccessproviders.vsi的副檔名改為「zip」並解壓,得到兩個文件,其中一個名為ASP.NET Access Providers.zip,把它也解壓,在所得文件中就可以找到ASPNetDB.mdb和web.config這兩個文件。
另外,所得文件中還有一個名為Samples的文件夾,在這個文件夾的子文件夾AccessProviders裡有七個「.cs」的程式碼文件,需將其編譯成SampleAccessProviders.dll。
開啟 VS 2008,建立一個名稱為「SampleAccessProviders」的新專案,類型為「ASP.NET Web Service 應用程式」。
移除自動建立的 Service1.asmx,再加入 Samples 文件夾的七個「.cs」的程式碼文件。
執行功能表「建置 / 建置SampleAccessProviders」。
系統會在「bin」資料夾中建立 SampleAccessProviders.dll。
l 建立SampleAccessProviders網站
新建一個網站,用我們得到的那個web.config文件替換新建項目中自動創建的那個,把ASPNetDB.mdb添加到項目的App_Data文件夾裡,把SampleAccessProviders.dll 文件添加到Bin 文件夾裡。
l 使用SampleAccessProviders管理帳號
執行功能表 「網站|ASP.NET配置」,打開asp.net網站管理工具,選擇「提供者」選項,點擊「為每項功能選擇不同的提供者(進階)」
可以看到,成員資格提供程序使用的是AccessMembershipProvider,而角色提供程序使用的是AccessRoleProvider。
l 設定ASPNetDB.mdb權限
ASPNetDB.mdb 只有登入者才能使用,參考「http://tw.myblog.yahoo.com/jw!ozeuU_mGAx1rvd0bKga8nQ--/article?mid=335&prev=359&next=271&l=f&fid=16」,設定 [Authenticated uUsers] 完全控制的權限:在步驟 6 選取 [Authenticated uUsers]。