Modèle de programmation RDS en détail
Voici les éléments clés du modèle de programmation RDS :
RDS. DataSpace
RDSServer.DataFactory
RDS. DataControl
Événement
Important
À compter de Windows 8 et Windows Server 2012, les composants serveur RDS ne sont plus inclus dans le système d’exploitation Windows (voir Windows 8 et livre de recettes de compatibilité Windows Server 2012 pour plus de détails). Les composants clients RDS seront supprimés dans une prochaine version de Windows. Évitez d’utiliser cette fonctionnalité dans le nouveau travail de développement et prévoyez de modifier les applications qui utilisent actuellement cette fonctionnalité. Les applications qui utilisent RDS doivent migrer vers WCF Data Service.
RDS. DataSpace
Votre application cliente doit spécifier le serveur et le programme serveur à appeler. En retour, votre application reçoit une référence au programme serveur et peut traiter la référence comme s’il s’agissait du programme serveur lui-même.
Le modèle objet RDS incarne cette fonctionnalité avec la RDS. DataSpace objet.
Le programme serveur est spécifié avec un identificateur de programme ou ProgID. Le serveur utilise le ProgID et le Registre de l’ordinateur serveur pour rechercher des informations sur le programme réel à lancer.
RDS fait une distinction en interne selon que le programme serveur se trouve sur un serveur distant sur Internet ou sur un intranet ; un serveur sur un réseau local ; ou non sur un serveur du tout, mais plutôt sur une bibliothèque de liens dynamiques (DLL) locale. Cette distinction détermine la façon dont les informations sont échangées entre le client et le serveur, et fait une différence tangible dans le type de référence retourné à votre application cliente. Toutefois, de votre point de vue, cette distinction n’a aucune signification particulière. Tout ce qui compte, c'est que vous receviez une référence de programme utilisable.
RDSServer.DataFactory
RDS fournit un programme serveur par défaut qui peut effectuer une requête SQL sur la source de données et retourner un objet Recordset ou prendre un objet Recordset et mettre à jour la source de données.
Le modèle objet RDS incarne cette fonctionnalité avec l’objet RDSServer.DataFactory.
De plus, cet objet a une méthode pour créer un objet recordset vide que vous pouvez remplir par programmation (CreateRecordset), et une autre méthode pour convertir un objet recordset en chaîne de texte pour générer une page Web (ConvertToString).
Avec ADO, vous pouvez remplacer certains des comportements de connexion et de commande standard de l'RDSServer.DataFactory avec un gestionnaire DataFactory et un fichier de personnalisation qui contient des paramètres de connexion, de commande et de sécurité.
Le programme serveur est parfois appelé un objet métier . Vous pouvez écrire votre propre objet métier personnalisé qui peut effectuer un accès complexe aux données, des vérifications de validité, et ainsi de suite. Même lors de l’écriture d’un objet métier personnalisé, vous pouvez créer une instance d’un objet RDSServer.DataFactory et utiliser certaines de ses méthodes pour accomplir vos propres tâches.
RDS. DataControl
RDS fournit un moyen de combiner les fonctionnalités de la RDS. DataSpace et RDSServer.DataFactory, et permet également aux contrôles visuels d’utiliser facilement l’objet Recordset retourné par une requête à partir d’une source de données. RDS tente, dans le cas le plus courant, de faire en sorte d'accéder automatiquement aux informations sur un serveur et de les afficher sur une interface visuelle.
Le modèle objet RDS incarne cette fonctionnalité avec la RDS. Objet dataControl.
Le RDS.DataControl a deux aspects. Un aspect concerne la source de données. Si vous définissez les informations de commande et de connexion à l’aide des propriétés Connect et SQL du RDS.DataControl, il utilisera automatiquement le RDS.DataSpace pour créer une référence à l’objet par défaut RDSServer.DataFactory. Ensuite, le RDSServer.DataFactory utilisera la valeur de propriété Connect pour se connecter à la source de données, utilisera la valeur de propriété SQL pour obtenir un objet Recordset à partir de la source de données et renverra l’objet Recordset au RDS.DataControl.
Le deuxième aspect concerne l'affichage dans un contrôle visuel des informations de l'objet Recordset retourné . Vous pouvez associer un contrôle visuel au RDS. DataControl (dans un processus appelé liaison) et accéder aux informations de l’objet Recordset associé, affichant les résultats de requête sur une page Web de Microsoft Internet Explorer. Chaque RDS.DataControl objet lie un objet Recordset, représentant les résultats d'une requête unique, à un ou plusieurs contrôles visuels (par exemple, une zone de texte, une zone de liste modifiable, un contrôle de grille, etc.). Il peut y avoir plusieurs RDS. DataControl objet sur chaque page. Chaque RDS. DataControl objet peut être connecté à une autre source de données et contenir les résultats d’une requête distincte.
L'objet RDS.DataControl possède également ses propres méthodes pour naviguer, trier et filtrer les lignes de l'objet Recordset associé. Ces méthodes sont similaires, mais pas identiques aux méthodes de l’objet Recordset ADO.
Événements
RDS prend en charge deux de ses propres événements, qui sont indépendants du modèle d’événement ADO. L’événement onReadyStateChange est appelé chaque fois que la propriété RDS.DataControlReadyState change, vous informant ainsi lorsqu’une opération asynchrone s’est terminée avec succès, a été interrompue ou a rencontré une erreur. L’événement onError est appelé chaque fois qu’une erreur se produit, même si l’erreur se produit pendant une opération asynchrone.
Note
Microsoft Internet Explorer fournit deux événements supplémentaires à RDS : onDataSetChanged, ce qui indique que le Recordset est fonctionnel, mais récupère toujours des lignes, et onDataSetComplete, ce qui indique que le Recordset a fini de récupérer des lignes.
Voir aussi
modèle de programmation RDS avec des objets
Objet DataControl (RDS)
DataFactory, objet (RDSServer)
objet DataSpace (RDS)
scénario RDS
Tutoriel RDS
Utilisation et sécurité de RDS