Cette documentation est archivée et n’est pas conservée.

AccessDataSource, classe

Remarque : cette classe est nouvelle dans le .NET Framework version 2.0.

Représente une base de données Microsoft Access aux contrôles liés aux données.

Espace de noms : System.Web.UI.WebControls
Assembly : System.Web (dans system.web.dll)

public class AccessDataSource : SqlDataSource
public class AccessDataSource extends SqlDataSource
public class AccessDataSource extends SqlDataSource

La classe AccessDataSource est un contrôle de source de données qui fonctionne avec les bases de données Microsoft Access. Comme sa classe de base, SqlDataSource, le contrôle AccessDataSource utilise des requêtes SQL pour exécuter la récupération de données.

L'une des caractéristiques uniques du contrôle AccessDataSource est que vous ne définissez pas la propriété ConnectionString. Vous devez simplement définir l'emplacement du fichier Access .mdb, à l'aide de la propriété DataFile, et AccessDataSource s'occupe de la connexion sous-jacente à la base de données. Vous devez placer des bases de données Access dans le répertoire App_Data du site Web et les référencer par un chemin d'accès relatif (par exemple, ~/App_Data/Northwind.mdb). Cet emplacement offre une sécurité supplémentaire aux fichiers de données, car ils ne sont pas fournis s'ils sont demandés directement par le navigateur Web client.

La classe AccessDataSource ne prend pas en charge la connexion aux bases de données Access protégées par un nom d'utilisateur ou un mot de passe, car vous ne pouvez pas définir la propriété ConnectionString. Si votre base de données Access est protégée par un nom d'utilisateur ou un mot de passe, utilisez le contrôle SqlDataSource pour vous connecter et spécifier une chaîne de connexion complète.

Vous liez des contrôles liés aux données à un AccessDataSource à l'aide de la propriété DataSourceID du contrôle lié aux données. Pour plus d'informations sur la liaison d'un contrôle lié aux données à des contrôles de source de données, consultez Liaison à des données à l'aide d'un contrôle de source de données.

Comme le contrôle AccessDataSource est spécifique à un seul produit de base de données, il utilise toujours le même fournisseur, le fournisseur de données .NET System.Data.OleDb. C'est pourquoi la propriété ProviderName est en lecture seule. Lors de l'utilisation du fournisseur System.Data.OleDb, l'ordre des paramètres dans une instruction SQL paramétrée est important ; les requêtes SQL paramétrées que vous spécifiez dans les propriétés SelectCommand, UpdateCommand, InsertCommand et DeleteCommand doivent se trouver dans le même ordre que les objets Parameter contenus dans la collection de paramètres correspondante. Si aucune collection de paramètres n'est spécifiée sur AccessDataSource, l'ordre des paramètres fournis à ces opérations doit correspondre à l'ordre dans lequel ils apparaissent dans l'instruction SQL sous-jacente. Pour plus d'informations, consultez Utilisation de paramètres avec le contrôle SqlDataSource.

Le contrôle AccessDataSource prend en charge le même comportement de mise en cache que sa classe de base. Utilisez la mise en cache pour augmenter la performance des pages qui utilisent le contrôle AccessDataSource. Pour plus d'informations sur la mise en cache de source de données, consultez Mise en cache de données à l'aide de contrôles de source de données.

Le tableau suivant décrit les fonctionnalités du contrôle AccessDataSource.

Fonction

Configuration requise

Tri

Affectez la valeur DataSet à la propriété DataSourceMode.

Filtrage

Affectez à la propriété FilterExpression une expression de filtrage utilisée pour filtrer les données lorsque la méthode Select est appelée.

Pagination

AccessDataSource ne prend pas en charge d'opérations de pagination directement sur une base de données Access. Un contrôle lié aux données, tel que GridView, peut paginer sur les éléments retournés par AccessDataSource, si la propriété DataSourceMode a la valeur DataSet.

Mise à jour

Affectez à la propriété UpdateCommand une instruction SQL utilisée pour mettre à jour des données. Cette instruction est généralement paramétrée.

Suppression

Affectez à la propriété DeleteCommand une instruction SQL utilisée pour supprimer des données. Cette instruction est généralement paramétrée.

Insertion

Affectez à la propriété InsertCommand une instruction SQL utilisée pour insérer des données. Cette instruction est généralement paramétrée.

Mise en cache

Affectez la valeur DataSet à la propriété DataSourceMode, la valeur true à la propriété EnableCaching et définissez les propriétés CacheDuration et CacheExpirationPolicy selon le comportement de mise en cache que vous souhaitez pour vos données en mémoire cache.

Comme tous les contrôles de source de données, le contrôle AccessDataSource est associé à une classe d'affichage de la source de données fortement typée. Comme le contrôle AccessDataSource étend le contrôle SqlDataSource, la classe AccessDataSourceView étend la classe SqlDataSourceView. La classe AccessDataSourceView substitue quelques-unes des méthodes SqlDataSourceView pour utiliser le fournisseur de données .NET System.Data.OleDb.

Aucun rendu visuel du contrôle AccessDataSource n'est disponible ; il est implémenté comme un contrôle pour activer la persistance déclarative et éventuellement autoriser la participation à la gestion d'état. Par conséquent, vous ne pouvez pas définir de propriétés qui prennent en charge des fonctionnalités visuelles, telles que les propriétés EnableTheming et SkinID.

RubriqueEmplacement
Procédure pas à pas : création d'une page Web pour afficher les données d'une base de données AccessGénération d'applications Web ASP.NET dans Visual Studio
Comment : établir une connexion à une base de données Access à l'aide du contrôle AccessDataSource (Visual Studio)Génération d'applications Web ASP.NET dans Visual Studio
Comment : ajouter des contrôles serveur Web Repeater à une page Web Forms (Visual Studio)Génération d'applications Web ASP.NET dans Visual Studio
Comment : établir une liaison vers les données d'un contrôle basé sur des modèles dans Visual StudioGénération d'applications Web ASP.NET dans Visual Studio
Comment : afficher les publicités d'une base de données à l'aide du contrôle serveur Web AdRotatorGénération d'applications Web ASP.NET dans Visual Studio
Comment : établir une connexion à une base de données Access à l'aide du contrôle AccessDataSourceGénération d'applications Web ASP.NET dans Visual Studio
Comment : afficher les publicités d'une base de données à l'aide du contrôle serveur Web AdRotatorGénération d'applications Web ASP.NET
Comment : établir une liaison vers les données d'un contrôle basé sur des modèlesGénération d'applications Web ASP.NET
Comment : afficher les publicités d'une base de données à l'aide du contrôle serveur Web AdRotatorGénération d'applications Web ASP.NET dans Visual Studio
Comment : établir une connexion à une base de données Access à l'aide du contrôle AccessDataSourceGénération d'applications Web ASP.NET dans Visual Studio
Comment : ajouter des contrôles serveur Web Repeater à une page Web FormsGénération d'applications Web ASP.NET dans Visual Studio
Comment : établir une liaison vers les données d'un contrôle basé sur des modèlesGénération d'applications Web ASP.NET dans Visual Studio
Procédure pas à pas : création d'une page Web pour afficher les données d'une base de données AccessGénération d'applications Web ASP.NET dans Visual Studio
Comment : établir une liaison vers les données d'un contrôle basé sur des modèles dans Visual StudioGénération d'applications Web ASP.NET dans Visual Studio
Comment : ajouter des contrôles serveur Web Repeater à une page Web FormsGénération d'applications Web ASP.NET dans Visual Studio
Comment : établir une liaison vers les données d'un contrôle basé sur des modèlesGénération d'applications Web ASP.NET dans Visual Studio
Procédure pas à pas : création d'une page Web pour afficher les données d'une base de données AccessGénération d'applications Web ASP.NET dans Visual Studio
Comment : établir une liaison vers les données d'un contrôle basé sur des modèles dans Visual StudioGénération d'applications Web ASP.NET dans Visual Studio

L'exemple de code suivant illustre un scénario d'affichage et de mise à jour commun avec le contrôle GridView. La propriété SelectCommand a pour valeur une requête SQL appropriée, et les données de la base de données Northwind sont affichées dans le contrôle GridView. Étant donné qu'une propriété UpdateCommand est spécifiée et que la propriété AutoGenerateEditButton a la valeur true, vous pouvez modifier et mettre à jour les enregistrements sans code supplémentaire. Le contrôle GridView gère l'ajout de paramètres à la collection UpdateParameters ; le contrôle GridView passe d'abord les valeurs de paramètre des objets BoundField puis les valeurs des champs spécifiés par la propriété DataKeyNames. GridView appelle la méthode Update automatiquement. Si vous souhaitez ordonner les paramètres, spécifiez explicitement une collection UpdateParameters sur AccessDataSource.

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

<HTML>
  <BODY>
    <form runat="server">

      <asp:accessdatasource
        id="AccessDataSource1"
        runat="server"
        datasourcemode="DataSet"
        datafile="~/App_Data/Northwind.mdb"
        selectcommand="SELECT EmployeeID,FirstName,LastName,Title FROM Employees"
        updatecommand="Update Employees SET FirstName=?,LastName=?,Title=? WHERE EmployeeID=@EmployeeID">
      </asp:accessdatasource>

      <asp:gridview
        id="GridView1"
        runat="server"
        autogeneratecolumns="False"
        datakeynames="EmployeeID"
        autogenerateeditbutton="True"
        datasourceid="AccessDataSource1">
        <columns>
          <asp:boundfield headertext="First Name" datafield="FirstName" />
          <asp:boundfield headertext="Last Name" datafield="LastName" />
          <asp:boundfield headertext="Title" datafield="Title" />
        </columns>
      </asp:gridview>

    </form>
  </BODY>
</HTML>

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

<HTML>
  <BODY>
    <FORM runat="server">

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

      <asp:GridView
        id="GridView1"
        runat="server"
        AutoGenerateColumns="False"
        DataKeyNames="EmployeeID"
        AutoGenerateEditButton="True"
        DataSourceID="AccessDataSource1">
        <Columns>
          <asp:BoundField HeaderText="First Name" DataField="FirstName" />
          <asp:BoundField HeaderText="Last Name" DataField="LastName" />
          <asp:BoundField HeaderText="Title" DataField="Title" />
        </Columns>
      </asp:GridView>

    </FORM>
  </BODY>
</HTML>

  • AspNetHostingPermission  Pour opérer dans un environnement hébergé. Valeur de demande : LinkDemand ; valeur d'autorisation : Minimal
  • AspNetHostingPermission  Pour opérer dans un environnement hébergé. Valeur de demande : InheritanceDemand ; valeur d'autorisation : Minimal

System.Object
   System.Web.UI.Control
     System.Web.UI.DataSourceControl
       System.Web.UI.WebControls.SqlDataSource
        System.Web.UI.WebControls.AccessDataSource

Les membres statiques publics (Shared en Visual Basic) de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.

.NET Framework

Prise en charge dans : 2.0
Afficher: