共用方式為


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 命名空間