Vue d’ensemble des applications de données .NET Framework multiniveaux
Notes
Les jeux de données et les classes associées sont des technologies .NET Framework héritées qui datent du début des années 2000. Elles permettent aux applications d’utiliser des données en mémoire pendant que les applications sont déconnectées de la base de données. Ces technologies sont particulièrement utiles aux applications qui permettent aux utilisateurs de modifier des données, et de rendre ces changements persistants dans la base de données. Même si les jeux de données sont une technologie très efficace, nous vous recommandons d’utiliser Entity Framework Core pour les nouvelles applications .NET. Entity Framework offre un moyen plus naturel d’utiliser des données tabulaires en tant que modèles objet. De plus, il présente une interface de programmation plus simple.
Les applications de données multiniveaux sont des applications centrées sur les données qui sont étagées en plusieurs niveaux. Également appelées « applications distribuées » et « applications multiniveaux », les applications multiniveaux séparent le traitement en niveaux discrets qui sont distribués entre le client et le serveur. Lorsque vous développez des applications qui accèdent aux données, vous devez avoir une séparation claire entre les différents niveaux qui composent l’application.
Une application multiniveaux classique inclut une couche Présentation, une couche intermédiaire et une couche Données. La manière la plus facile de séparer plusieurs couches d'une application multiniveau consiste à créer des projets discrets pour chaque niveau que vous voulez inclure dans votre application. Par exemple, le niveau présentation peut être une application Windows Forms, tandis que la logique d’accès aux données peut être une bibliothèque de classes située dans le niveau intermédiaire. En outre, la couche de présentation peut communiquer avec la logique d’accès aux données dans le niveau intermédiaire via un service tel qu’un service web. La séparation des composants d'application en couches distinctes renforce la facilité de maintenance et l'évolutivité de l'application. Cela est possible grâce à une adoption plus facilitée des nouvelles technologies qui peut être appliquée sur un seul niveau sans avoir à reconcevoir toute la solution. En outre, les applications multiniveaux stockent généralement des informations sensibles dans le niveau intermédiaire, ce qui maintient l’isolement par rapport au niveau de présentation.
Visual Studio contient plusieurs fonctionnalités pour aider les développeurs à créer des applications multiniveaux :
Le jeu de données fournit une propriété DataSet Project qui vous permet de séparer le jeu de données (couche d’entité de données) et TableAdapters (couche d’accès aux données) en projets discrets.
Les outils LINQ to SQL dans Visual Studio fournissent des paramètres pour générer les classes DataContext et de données dans des espaces de noms distincts. Cela permet la séparation logique des niveaux d’accès aux données et d’entité de données.
LINQ to SQL fournit la méthode Attach qui vous permet de regrouper le DataContext à partir de différents niveaux dans une application. Pour obtenir d’autres informations, consultez Applications multiniveaux et distantes avec LINQ to SQL.
Le niveau Présentation est le niveau dans lequel les utilisateurs interagissent avec une application. Il contient souvent également une logique d’application supplémentaire. Les composants de niveau présentation classiques sont les suivants :
Composants de liaison de données, tels que BindingSource et BindingNavigator.
Représentations d’objets de données, telles que les classes d’entité LINQ to SQL à utiliser dans le niveau présentation.
Le niveau présentation accède généralement au niveau intermédiaire à l’aide d’une référence de service (par exemple, un service Windows Communication Foundation Services et WCF Data Services dans une application Visual Studio). Le niveau présentation n’accède pas directement au niveau données. Le niveau de présentation communique avec le niveau données par le biais du composant d’accès aux données dans le niveau intermédiaire.
Le niveau intermédiaire est la couche que le niveau de présentation et le niveau de données utilisent pour communiquer entre eux. Les composants de niveau intermédiaire standard incluent les suivants :
Logique métier, comme les règles métier et la validation des données.
Composants et logiques d’accès aux données, tels que les suivants :
Représentations d’objets de données, telles que les classes d’entité LINQ to SQL.
Services d’application courants, tels que l’authentification, l’autorisation et la personnalisation.
L’illustration suivante montre les fonctionnalités et technologies disponibles dans Visual Studio et leur emplacement dans le niveau intermédiaire d’une application multiniveau.
Niveau intermédiaire
Le niveau intermédiaire se connecte généralement au niveau données à l’aide d’une connexion de données. Cette connexion de données est généralement stockée dans le composant d’accès aux données.
La couche Données correspond au serveur stockant les données d’une application (par exemple, dans le cas d’un serveur exécutant SQL Server).
L’illustration suivante montre les fonctionnalités et technologies disponibles dans Visual Studio et leur emplacement dans le niveau données d’une application multiniveau.
Couche Données
Le niveau données n’est pas accessible directement à partir du client dans le niveau présentation. Au lieu de cela, le composant d’accès aux données dans le niveau intermédiaire est utilisé pour la communication entre les niveaux de présentation et de données.
Les rubriques suivantes fournissent des informations sur le fonctionnement avec des applications multiniveaux :
Séparer les datasets et les TableAdapters en différents projets
Procédure pas à pas : Création d’une application de données multiniveau