Classe DomainContext
Un DomainContext est une représentation côté client avec état d'un service de domaine, fournissant l'accès à toutes les fonctionnalités du service.
Espace de noms: System.ServiceModel.DomainServices.Client
Assembly : System.ServiceModel.DomainServices.Client (dans system.servicemodel.domainservices.client.dll)
Utilisation
'Utilisation
Dim instance As DomainContext
Syntaxe
'Déclaration
Public MustInherit Class DomainContext
Implements INotifyPropertyChanged
public abstract class DomainContext : INotifyPropertyChanged
public ref class DomainContext abstract : INotifyPropertyChanged
public abstract class DomainContext implements INotifyPropertyChanged
public abstract class DomainContext implements INotifyPropertyChanged
Exemple
L'exemple suivant montre comment créer une instance d'une classe DomainContext générée et comment charger des données à partir d'une requête.
Imports System.ServiceModel.DomainServices.Client
Imports RIAServicesExample.Web
Partial Public Class MainPage
Inherits UserControl
Private _customerContext As New CustomerDomainContext
Public Sub New()
InitializeComponent()
Dim loadOp = Me._customerContext.Load(Me._customerContext.GetCustomersQuery())
CustomerGrid.ItemsSource = loadOp.Entities
End Sub
End Class
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using RIAServicesExample.Web;
using System.ServiceModel.DomainServices.Client;
namespace RIAServicesExample
{
public partial class MainPage : UserControl
{
private CustomerDomainContext _customerContext = new CustomerDomainContext();
public MainPage()
{
InitializeComponent();
LoadOperation<Customer> loadOp = this._customerContext.Load(this._customerContext.GetCustomersQuery());
CustomerGrid.ItemsSource = loadOp.Entities;
}
}
}
Notes
Pour chaque service de domaine du projet serveur, les Services RIA WCF génèrent une classe qui dérive de DomainContext. La classe DomainContext générée vous permet d'interagir avec le service de domaine. Vous pouvez extraire des données en appelant la méthode Load et en lui passant comme paramètre l'une des méthodes de requête générées. Vous enregistrez les modifications dans les données en appelant la méthode SubmitChanges. Vous annulez toutes les modifications de données en attente et rétablissez les données à leur état précédent en appelant la méthode RejectChanges. La classe générée contient des méthodes de requête qui correspondent à celles du service de domaine. Par défaut, Les Services RIA utilisent une convention d'affectation de noms pour le contexte de domaine généré et ses méthodes. Par exemple, un service de domaine nommé CustomerDomainService
dans le projet serveur aura une classe de contexte de domaine nommée CustomerDomainContext
dans le projet client. Une méthode de requête nommée GetCustomers
a dans le projet client une méthode correspondante nommée GetCustomersQuery
. Pour plus d'informations, consultez Client Code Generation.
Pour rechercher la classe de contexte de domaine générée, sélectionnez Afficher tous les fichiers dans le projet Silverlight et ouvrez le dossier Generated_Code.
Lorsque vous exécutez une opération de domaine, celle-ci est traitée de façon asynchrone. Pour effectuer une action lorsque l'opération est terminée, vous devez fournir une méthode de rappel. Un exemple de fourniture de méthode de rappel est proposé ci-dessous.
Hiérarchie d'héritage
System.Object
System.ServiceModel.DomainServices.Client.DomainContext
System.ServiceModel.DomainServices.Client.ApplicationServices.AuthenticationDomainContextBase
Sécurité des threads
Tous les membres publics statiques (Partagés dans Visual Basic) de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.
Plateformes
Plateformes de développement
Windows XP Édition familiale, Windows XP Professionnel, Windows Server 2003 , Windows Server 2008 et Windows 2000
Plateformes cibles
Change History
Voir aussi
Référence
Membres DomainContext
Espace de noms System.ServiceModel.DomainServices.Client