AccessDataSource.DataFile 屬性

定義

取得或設定 Microsoft Access .mdb 檔的位置。

public:
 property System::String ^ DataFile { System::String ^ get(); void set(System::String ^ value); };
public string DataFile { get; set; }
member this.DataFile : string with get, set
Public Property DataFile As String

屬性值

String

Access .mdb 檔的位置。 支援絕對、相對和虛擬路徑。

例外狀況

指定的路徑無效。

範例

本節包含三個程式碼範例。 第一個程式碼範例示範如何將 屬性設定 DataFile 為 Northwind.mdb 檔案,該檔案位於與 Web Form 頁面相同的目錄中。 第二個程式碼範例示範如何將 屬性設定 DataFile 為 Northwind.mdb 檔案的虛擬路徑,該檔案位於名為 Database 的目錄中,該目錄位於Web Form頁面所在的目錄底下。 第三個程式碼範例示範如何將 屬性設定 DataFile 為 UNC 共用上可用的 Northwind.mdb 檔案 UNC 路徑。

下列程式碼範例示範如何將 屬性設定 DataFile 為 Northwind.mdb 檔案,該檔案位於與Web Form頁面相同的目錄中。

<%@Page  Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <asp:AccessDataSource
        id="AccessDataSource1"
        runat="server"
        DataSourceMode="DataSet"
        DataFile="~/App_Data/Northwind.mdb"
        SelectCommand="SELECT FirstName, LastName, Title FROM Employees">
      </asp:AccessDataSource>

      <asp:GridView
        id="GridView1"
        runat="server"
        AllowSorting="True"
        DataSourceID="AccessDataSource1">
      </asp:GridView>

    </form>
  </body>
</html>
<%@Page  Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <asp:AccessDataSource
        id="AccessDataSource1"
        runat="server"
        DataSourceMode="DataSet"
        DataFile="~/App_Data/Northwind.mdb"
        SelectCommand="SELECT FirstName, LastName, Title FROM Employees">
      </asp:AccessDataSource>

      <asp:GridView
        id="GridView1"
        runat="server"
        AllowSorting="True"
        DataSourceID="AccessDataSource1">
      </asp:GridView>

    </form>
  </body>
</html>

下列程式碼範例示範如何將 屬性設定 DataFile 為 Northwind.mdb 檔案的虛擬路徑,該檔案位於名為 Database 的目錄中,該目錄位於Web Form頁面所在的目錄底下。

<%@Page  Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <asp:AccessDataSource
        id="AccessDataSource1"
        runat="server"
        DataSourceMode="DataReader"
        DataFile="database/Northwind.mdb"
        SelectCommand="SELECT FirstName, LastName, Title FROM Employees">
      </asp:AccessDataSource>

      <asp:GridView
        id="GridView1"
        runat="server"
        DataSourceID="AccessDataSource1">
      </asp:GridView>

    </form>
  </body>
</html>
<%@Page  Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <asp:AccessDataSource
        id="AccessDataSource1"
        runat="server"
        DataSourceMode="DataReader"
        DataFile="database/Northwind.mdb"
        SelectCommand="SELECT FirstName, LastName, Title FROM Employees">
      </asp:AccessDataSource>

      <asp:GridView
        id="GridView1"
        runat="server"
        DataSourceID="AccessDataSource1">
      </asp:GridView>

    </form>
  </body>
</html>

下列程式碼範例示範如何將 屬性設定 DataFile 為 UNC 共用上可用的 Northwind.mdb 檔案 UNC 路徑。

<%@Page  Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <asp:AccessDataSource
        id="AccessDataSource1"
        runat="server"
        DataSourceMode="DataReader"
        DataFile="\\uncpath\Northwind.mdb"
        SelectCommand="SELECT FirstName, LastName, Title FROM Employees">
      </asp:AccessDataSource>

      <asp:GridView
        id="GridView1"
        runat="server"
        DataSourceID="AccessDataSource1">
      </asp:GridView>

    </form>
  </body>
</html>
<%@Page  Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <asp:AccessDataSource
        id="AccessDataSource1"
        runat="server"
        DataSourceMode="DataReader"
        DataFile="\\uncpath\Northwind.mdb"
        SelectCommand="SELECT FirstName, LastName, Title FROM Employees">
      </asp:AccessDataSource>

      <asp:GridView
        id="GridView1"
        runat="server"
        DataSourceID="AccessDataSource1">
      </asp:GridView>

    </form>
  </body>
</html>

備註

屬性 DataFile 是控制項所代表 Access .mdb 檔案 AccessDataSource 的虛擬、絕對或 UNC 目錄路徑。 如果只輸入檔案名,這表示 .mdb 檔案位於與目前執行Web Form頁面或程式碼相同的目錄中。 支援具有正斜線和回斜線的相對路徑。 例如, "./test/test/Northwind.mdb" 對應至 與 ".\test\test\Northwind.mdb""test/test/Northwind.mdb" 相同的路徑。 也支援 UNC 路徑,例如 "\\mymachine\somedatadirectory\Northwind.mdb" 。 雖然支援絕對實體路徑,但您應該避免使用這些路徑,因為它們可能會使部署複雜。

設定 Access 資料庫的許可權

使用 Access .mdb 檔案的重要層面是正確設定許可權。 當 Web 應用程式使用 Access 資料庫時,應用程式必須具有 .mdb 檔案的讀取權限,才能存取資料。 此外,應用程式必須具有包含 .mdb 檔案之資料夾的寫入權限。 需要寫入權限,因為 Access 會建立副檔名為 .ldb 的額外檔案,以維護並行使用者資料庫鎖定的相關資訊。 .ldb 檔案會在執行時間建立。

根據預設,ASP.NET Web 應用程式會在 Microsoft (Windows 2000 和 Microsoft Windows XP) 的本機電腦帳戶內容中執行,或在 Microsoft Windows Server 2003) 的網路服務帳戶 (內容中執行。 例如,針對 Windows 2000 或 Windows XP,如果 Web 服務器名為 MyServer,ASP.NET MyServer 電腦上的應用程式會在本機帳戶 MyServer\ASPNET 的內容中執行。

因此,若要在 ASP.NET Web 應用程式中使用 Access 資料庫,您必須將包含 Access 資料庫的資料夾設定為具有讀取和寫入權限。

當您在 Microsoft Visual Web Developer Web 開發工具中建立網站時,Visual Web Developer 會在目前根資料夾下方建立名為 App_Data的資料夾。 資料夾的設計目的是要作為應用程式資料的存放區,包括 Access 資料庫。 App_Data資料夾也由 ASP.NET 用來儲存系統維護的資料庫,例如成員資格和角色的資料庫。 當 Visual Web Developer 建立App_Data資料夾時,會將資料夾的讀取和寫入權限授與 ASPNET 或 NETWORK SERVICE 使用者帳戶。

注意

作為安全性措施,Visual Web Developer 也會設定 App_Data 資料夾,讓資料夾中的檔案不會由網頁伺服器提供。 請勿將任何網頁儲存在 App_Data 資料夾中,因為如果使用者從該資料夾要求頁面,就會看到錯誤。

適用於

另請參閱