連線到 ASP.NET 資料庫

iDotNetSpace發表於2010-05-17

ASP.NET 使您可以靈活地連線至資料庫。一種簡單的方法是使用資料來源控制元件,通過這些控制元件可以將資料訪問封裝到可以使用連線和查詢資訊配置的控制元件中。或者,可以使用 ADO.NET 類自己編寫執行資料訪問的程式碼。

使用 ASP.NET 網頁中的資料來源控制元件

若要使用資料來源控制元件連線至資料庫,請執行以下操作:

  • 確定所需的資料來源控制元件的型別。例如,ObjectDataSource 控制元件使用中間層業務物件檢索和修改資料,而 SqlDataSource 控制元件允許您提供資料來源和 SQL 語句的連線,從而檢索和修改資料。

  • 使用 SqlDataSource 控制元件時,請確定所需的提供程式。提供程式是與特定型別的資料庫進行通訊的類。預設為 System.Data.SqlClient 提供程式,該提供程式連線至 Microsoft SQL Server 資料庫。

  • 將資料來源控制元件新增到頁面中,並設定其資料訪問屬性。例如,ObjectDataSource 控制元件需要中間層業務物件型別及一種或多種用於查詢或修改資料的方法。SqlDataSource 控制元件需要一個包含提供程式開啟特定資料庫時所需資訊的連線字串,以及用於查詢或修改資料的一個或多個 SQL 命令。

    可以將提供程式和連線資訊指定為 SqlDataSource 控制元件的單獨屬性,也可以在 Web 應用程式的 Web.config 檔案中集中定義提供程式和連線字串資訊。在 Web.config 檔案中儲存連線資訊後,可以重複使用這些資訊處理多個資料控制元件例項。此外,還可以幫助您使用訪問控制列表 (ACL) 和加密保護連線字串資訊。有關更多資訊,請參見本主題後面的“連線字串”。

提供程式

ADO.NET 提供程式是可以與特定型別的資料庫或資料儲存區進行通訊的類。例如,一個提供程式可能能夠與 SQL Server 資料庫進行通訊,而另一個提供程式可能能夠與 Oracle 資料庫進行通訊。.NET Framework 中包含的提供程式有:

  • System.Data.SqlClient 名稱空間中用於 SQL Server 的 .NET Framework 資料提供程式。此提供程式為 SqlDataSource 控制元件的預設提供程式;如果您正在使用SqlDataSource 控制元件連線至 SQL Server 資料庫,則無需顯式指定提供程式。

  • System.Data.OleDb 名稱空間中用於 OLE DB 的 .NET Framework 資料提供程式。

  • System.Data.Odbc 名稱空間中用於 ODBC 的 .NET Framework 資料提供程式。

  • System.Data.OracleClient 名稱空間中用於 Oracle 的 .NET Framework 資料提供程式。

可以將 Web.config 檔案中的提供程式指定為連線字串的一部分,也可以指定為頁面上的單個資料來源控制元件的屬性。

連線字串

連線字串提供相關資訊,當提供程式與特定資料庫進行通訊時需要這些資訊。可以將連線字串儲存在 Web.config 檔案中,並引用資料來源控制元件中的配置項。

連線字串通常會提供伺服器或資料庫伺服器的位置、要使用的特定資料庫及身份驗證資訊,具體取決於提供程式。與提供程式相同,您可以在 Web.config 檔案中指示連線字串,也可以指示為頁面上的單個資料來源控制元件的屬性。

連線字串儲存

最佳做法是將連線字串放在 Web.config 檔案中。在  元素元素中,可以建立一個名為  的子元素並將連線字串置於其中,如此示例所示:

在此示例中,同時提供了名稱和提供程式。應用程式中任何頁面上的任何資料來源控制元件都可以引用此連線字串項。將連線字串資訊儲存在 Web.config 檔案中的優點是,您可以方便地更改伺服器名稱、資料庫或身份驗證資訊,而無需編輯各個網頁。此外,您可以使用加密保護連線字串。有關更多資訊,請參見如何:確保使用資料來源控制元件時連線字串的安全

資料來源控制元件

資料來源控制元件提供資料服務(包括檢索和修改資料),這些服務可由其他資料繫結 Web 伺服器控制元件(如 GridViewFormView 和 DetailsView 控制元件)使用。資料來源控制元件(如 SqlDataSource)會封裝連線至資料庫以檢索或運算元據所需的所有元素(提供程式、連線字串和查詢)。例如,下面的 SqlDataSource 控制元件配置為連線至資料庫並從 Customers 表中讀取所有記錄:

在此示例中,提供程式名稱和連線字串儲存於 Web.config 檔案中,而 SQL 查詢配置為資料來源控制元件的屬性。

使用程式碼執行資料訪問

如果不適於在應用程式中使用資料來源控制元件,則可以使用 ADO.NET 類自行對資料訪問進行編碼。如果使用資料來源控制元件無法滿足您的複雜要求,或者如果要建立在網頁外部執行資料訪問的單獨元件,則可以自行對資料訪問進行編碼。

請參見

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-662883/,如需轉載,請註明出處,否則將追究法律責任。

相關文章