AccessDataSource.DataFile Właściwość

Definicja

Pobiera lub ustawia lokalizację pliku mdb programu Microsoft Access.

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

Wartość właściwości

String

Lokalizacja pliku mdb programu Access. Obsługiwane są ścieżki bezwzględne, względne i wirtualne.

Wyjątki

Podano nieprawidłową ścieżkę.

Przykłady

Ta sekcja zawiera trzy przykłady kodu. Pierwszy przykład kodu pokazuje, jak ustawić DataFile właściwość na plik Northwind.mdb, który znajduje się w tym samym katalogu co strona Web Forms. Drugi przykład kodu pokazuje, jak ustawić DataFile właściwość na ścieżkę wirtualną pliku Northwind.mdb, który znajduje się w katalogu o nazwie Database, który znajduje się poniżej katalogu, w którym znajduje się strona Web Forms. W trzecim przykładzie kodu pokazano, jak ustawić DataFile właściwość na ścieżkę UNC pliku Northwind.mdb, który jest dostępny w udziale UNC.

W poniższym przykładzie kodu pokazano, jak ustawić DataFile właściwość na plik Northwind.mdb, który znajduje się w tym samym katalogu co strona Web Forms.

<%@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>

Poniższy przykład kodu pokazuje, jak ustawić DataFile właściwość na ścieżkę wirtualną pliku Northwind.mdb, który znajduje się w katalogu o nazwie Database, który znajduje się poniżej katalogu, w którym znajduje się strona Web Forms.

<%@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>

W poniższym przykładzie kodu pokazano, jak ustawić DataFile właściwość na ścieżkę UNC pliku Northwind.mdb, który jest dostępny w udziale 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>

Uwagi

Właściwość DataFile jest wirtualną, bezwzględną lub UNC ścieżką katalogu do pliku .mdb programu Access reprezentowanego przez kontrolkę AccessDataSource . Jeśli zostanie wprowadzona tylko nazwa pliku, oznacza to, że plik mdb znajduje się w tym samym katalogu co aktualnie wykonująca Web Forms stronie lub kodzie. Obsługiwane są ścieżki względne z ukośnikami do przodu i do tyłu. Na przykład "./test/test/Northwind.mdb" mapuje na tę samą ścieżkę co ".\test\test\Northwind.mdb" i "test/test/Northwind.mdb". Obsługiwane są również ścieżki UNC, takie jak "\\mymachine\somedatadirectory\Northwind.mdb", . Chociaż bezwzględne ścieżki fizyczne są obsługiwane, należy unikać ich używania, ponieważ mogą one komplikować wdrożenie.

Konfigurowanie uprawnień dla bazy danych programu Access

Ważnym aspektem pracy z plikiem mdb programu Access jest prawidłowe skonfigurowanie uprawnień. Gdy aplikacja sieci Web używa bazy danych programu Access, aplikacja musi mieć uprawnienie Odczyt do pliku mdb, aby mogła uzyskiwać dostęp do danych. Ponadto aplikacja musi mieć uprawnienie Zapis do folderu zawierającego plik mdb. Uprawnienia do zapisu są wymagane, ponieważ program Access tworzy dodatkowy plik z rozszerzeniem ldb, w którym przechowuje informacje o blokadach bazy danych dla równoczesnych użytkowników. Plik ldb jest tworzony w czasie wykonywania.

Domyślnie aplikacje internetowe ASP.NET działają w kontekście konta komputera lokalnego o nazwie ASPNET (dla programu Microsoft Windows 2000 i Microsoft Windows XP) lub w kontekście konta USŁUGI SIECIOWEJ (dla programu Microsoft Windows Server 2003). Na przykład w przypadku Windows 2000 lub Windows XP, jeśli serwer sieci Web ma nazwę MyServer, ASP.NET aplikacje na komputerze MyServer działają w kontekście konta lokalnego MyServer\ASPNET.

W związku z tym, aby użyć bazy danych programu Access w aplikacji sieci Web ASP.NET, należy skonfigurować folder zawierający bazę danych programu Access, aby mieć uprawnienia do odczytu i zapisu.

Podczas tworzenia witryny sieci Web w narzędziu dewelopera sieci Web programu Microsoft Visual Visual Web Developer program Visual Web Developer tworzy folder o nazwie App_Data poniżej bieżącego folderu głównego. Folder jest przeznaczony do przechowywania danych aplikacji, w tym baz danych programu Access. Folder App_Data jest również używany przez ASP.NET do przechowywania baz danych przechowywanych przez system, takich jak baza danych na potrzeby członkostwa i ról. Gdy program Visual Web Developer tworzy folder App_Data, przyznaje uprawnienia do odczytu i zapisu dla folderu na koncie użytkownika ASPNET lub USŁUGI SIECIOWEJ.

Uwaga

Jako środek zabezpieczający program Visual Web Developer konfiguruje również folder App_Data tak, aby pliki w folderze nie są obsługiwane przez serwer sieci Web. Nie należy przechowywać żadnych stron sieci Web w folderze App_Data, ponieważ użytkownicy zobaczą błąd, jeśli zażądają strony z tego folderu.

Dotyczy

Zobacz też