DomainContext 类

DomainContext 是域服务的有状态客户端表示,以提供对服务所有功能的访问。

命名空间: System.ServiceModel.DomainServices.Client
程序集: System.ServiceModel.DomainServices.Client(在 system.servicemodel.domainservices.client.dll 中)

用法

用法
Dim instance As DomainContext

语法

声明
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

示例

下面的示例演示了如何创建一个生成的 DomainContext 类的实例并从查询加载数据。

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;
        }
    }
}

备注

对于服务器项目中的每个域服务,WCF RIA Services 将生成一个派生自 DomainContext 的类。使用生成的 DomainContext 类与域服务进行交互。通过调用 Load 方法并将生成的查询方法之一作为参数进行传递来检索数据。通过调用 SubmitChanges 方法保存数据中的更改。通过调用 RejectChanges 方法取消所有挂起的数据更改并将数据恢复至其之前的状态。 生成的类包含与域服务中查询方法对应的查询方法。默认情况下,RIA Services 针对生成的域上下文及其方法使用命名约定。例如,名为 CustomerDomainService 的服务器项目中的域服务在名为 CustomerDomainContext 的客户端项目中将具有一个域上下文类。名为 GetCustomers 的查询方法在名为 GetCustomersQuery 的客户端项目中具有相应方法。有关更多信息,请参见 Client Code Generation

若要查找生成的域上下文类,请选择 Silverlight 项目中的**“显示所有文件”**并打开 Generated_Code 文件夹。

在执行域操作时,操作将以异步方式进行处理。若要在操作完成后采取操作,则必须提供一个回调方法。下面是提供回调方法的示例。

继承层次结构

System.Object
  System.ServiceModel.DomainServices.Client.DomainContext
     System.ServiceModel.DomainServices.Client.ApplicationServices.AuthenticationDomainContextBase

线程安全

此类型的任何公共静态(在 Visual Basic 中为 共享)成员都是线程安全的。不保证所有实例成员都是线程安全的。

平台

开发平台

Windows XP Home Edition, Windows XP Professional, Windows Server 2003 、Windows Server 2008 和 Windows 2000

目标平台

Change History

另请参见

参考

DomainContext 成员
System.ServiceModel.DomainServices.Client 命名空间