ASP.NET 設定檔提供者
更新:2007 年 11 月
ASP.NET 設定檔功能使用的提供者架構結構,與 ASP.NET 成員資格、ASP.NET 角色管理和其他 ASP.NET 功能所使用的相同。ASP.NET 設定檔功能是以層級式系統方式運作,所以提供型別屬性值與管理使用者識別的設定檔功能,是與基礎資料存放分離的。設定檔功能是依賴設定檔提供者 (資料提供者),執行儲存和擷取設定檔屬性值所需的後端工作。
預設設定檔提供者
ASP.NET 包含使用 Microsoft SQL Server 儲存資料的設定檔提供者。預設 ASP.NET 電腦組態包含名為 AspNetSqlProfileProvider 的預設 SqlProfileProvider 執行個體,以連接至本機電腦上的 SQL Server。根據預設,ASP.NET 設定檔功能會使用這個提供者執行個體。此外,您也可以在應用程式的 Web.config 檔中指定不同的預設提供者。
若要使用 SqlProfileProvider,您必須先建立 SqlProfileProvider 所使用的 SQL Server 資料庫。您可以執行下列路徑中的 Aspnet_regsql.exe 命令建立資料庫:
systemroot\Microsoft .NET\SDK\version
當您執行這個工具時,可以指定 -Ap 選項。下列命令示範的語法,是用來建立使用 SqlProfileProvider 儲存 ASP.NET 設定檔所需的資料庫:
aspnet_regsql.exe -Ap
上述範例並未指定所建立的資料庫名稱,所以會使用預設名稱。預設資料庫名稱為 Aspnetdb。
如果經由使用整合式安全性的連接字串設定設定檔提供者,ASP.NET 應用程式的處理序帳戶必須有連接至 SQL Server 資料庫的權限。
注意事項: |
---|
如果您使用經由預設組態安裝的 SQL Server 2005 Express Edition 資料庫,並且資料庫與 Web 伺服器在相同的電腦上,ASP.NET 就會自動建立設定檔資料庫。 |
自訂設定檔提供者
在一些情況中,您可能想要建立和使用自訂設定檔提供者。這通常會發生在如果您已經有儲存使用者資訊的資料庫 (例如員工資料庫)、如果您需要使用 Microsoft SQL Server 以外的資料庫,或是如果您需要使用不同的資料存放區 (例如 XML 檔)。如需詳細資訊,請參閱實作設定檔提供者。
不同的設定檔提供者可以服務儲存在使用者設定檔中的所有屬性。因此您可以管理來自多重資料來源的資料,以儲存單一使用者設定檔的資訊。