DataServiceContext クラス

定義

DataServiceContext は、データ サービスのランタイム コンテキストを表します。

public ref class DataServiceContext
public class DataServiceContext
type DataServiceContext = class
Public Class DataServiceContext
継承
DataServiceContext

次の例は、サービス参照の追加ツールによって生成される DataServiceContext を使用して、すべての顧客を返すクエリを Northwind データ サービスに対して暗黙的に実行する方法を示します。 要求された Customers エンティティ セットの URI は、コンテキストによって自動的に決定されます。 クエリは、列挙が行われるときに暗黙的に実行されます。 Northwind データ サービスは、WCF Data Services を完了すると作成されます。

// Create the DataServiceContext using the service URI.
NorthwindEntities context = new NorthwindEntities(svcUri);

// Define a new query for Customers.
DataServiceQuery<Customer> query = context.Customers;

try
{
    // Enumerate over the query result, which is executed implicitly.
    foreach (Customer customer in query)
    {
        Console.WriteLine("Customer Name: {0}", customer.CompanyName);
    }
}
catch (DataServiceQueryException ex)
{
    throw new ApplicationException(
        "An error occurred during query execution.", ex);
}
' Create the DataServiceContext using the service URI.
Dim context = New NorthwindEntities(svcUri)

' Define a new query for Customers.
Dim query As DataServiceQuery(Of Customer) = context.Customers

Try
    ' Enumerate over the query result, which is executed implicitly.
    For Each customer As Customer In query
        Console.WriteLine("Customer Name: {0}", customer.CompanyName)
    Next
Catch ex As DataServiceQueryException
    Throw New ApplicationException( _
            "An error occurred during query execution.", ex)
End Try

注釈

WCF Data Servicesはステートレスですが、 DataServiceContext はではありません。 更新管理などの機能をサポートするために、クライアントでの状態は対話間で維持されます。 このクラスと、データ サービスへの特定の HTTP 要求を表す DataServiceQuery クラスが、クライアント ライブラリにおける 2 つの主要なクラスです。

コンストラクター

DataServiceContext(Uri)

DataServiceContext を指定して、serviceRoot クラスの新しいインスタンスを初期化します。

プロパティ

ApplyingChanges

DataServiceContext が追跡対象オブジェクトに現在変更を適用しているかどうかを示す値を取得します。

BaseUri

対象データ サービスのルートを識別する絶対 URI を取得します。

Credentials

DataServiceContext オブジェクトを使用して作成された各クエリで使用される認証情報を取得または設定します。

DataNamespace

Atom ペイロードのデータ項目 (メタデータ項目ではない) の XML 名前空間を取得または設定します。

Entities

現在 DataServiceContext によって追跡されているすべてのリソースの一覧を取得します。

IgnoreMissingProperties

型から読み取られたプロパティをクライアント側の型のプロパティにマップする必要があるかどうかを取得または設定します。

IgnoreResourceNotFoundException

データ サービスから 404 エラー (リソースが見つかりません) が返された場合に例外を発生させるかどうかを取得または設定します。

Links

現在 DataServiceContext オブジェクトによって追跡されているすべての関連付けまたはリンクのコレクションを取得します。

MergeOption

データ サービスからエンティティを受け取るための同期オプションを取得または設定します。

ResolveName

エンティティをデータ サービスに送信するときにクライアント ライブラリによって使用される、既定の型解決方法をオーバーライドする関数を取得または設定します。

ResolveType

エンティティをデータ サービスから受信するときにクライアント ライブラリによって使用される、既定の型解決オプションをオーバーライドする関数を取得または設定します。

SaveChangesDefaultOptions

SaveChangesOptions メソッドによって使用される SaveChanges() 値を取得または設定します。

Timeout

データ サービスへの基になる HTTP 要求に使用されるタイムアウト オプションを取得または設定します。

TypeScheme

サービスが使用する型スキームを示すために使用される URI を取得または設定します。

UsePostTunneling

ポスト トンネルを使用するかどうかを示すブール値を取得または設定します。

メソッド

AddLink(Object, String, Object)

DataServiceContext が追跡しているオブジェクトのセットに、指定されたリンクを追加します。

AddObject(String, Object)

DataServiceContext が追跡しているオブジェクトのセットに、指定されたオブジェクトを追加します。

AddRelatedObject(Object, String, Object)

関連オブジェクトをコンテキストに追加し、1 つの要求の 2 つのオブジェクト間のリレーションシップを定義するリンクを作成します。

AttachLink(Object, String, Object)

エンティティ オブジェクト間のリレーションシップを定義する指定されたリンクの追跡を開始するように DataServiceContext に通知します。

AttachTo(String, Object)

指定されたリソースの追跡を開始するように DataServiceContext に通知し、指定されたリソース セット内のそのリソースの場所を提供します。

AttachTo(String, Object, String)

指定されたリソースの追跡を開始するように DataServiceContext に通知し、指定されたリソース セット内のそのリソースの場所を提供します。

BeginExecute<T>(DataServiceQueryContinuation<T>, AsyncCallback, Object)

要求をデータ サービスに非同期的に送信して、ページングされたクエリ結果のデータの次のページを取得します。

BeginExecute<TElement>(Uri, AsyncCallback, Object)

サービスからの結果の待機中にこの呼び出しによって処理がブロックされないように、要求を非同期的に送信します。

BeginExecuteBatch(AsyncCallback, Object, DataServiceRequest[])

クエリのグループをデータ サービスにバッチとして非同期的に送信します。

BeginGetReadStream(Object, DataServiceRequestArgs, AsyncCallback, Object)

指定したエンティティのバイナリ プロパティ データを、指定したメッセージ ヘッダーと共にデータ ストリームとして非同期に取得します。

BeginLoadProperty(Object, String, AsyncCallback, Object)

指定されたプロパティの値をデータ サービスから非同期的に読み込みます。

BeginLoadProperty(Object, String, DataServiceQueryContinuation, AsyncCallback, Object)

関連エンティティの次のページを、指定されたクエリ連結オブジェクトを使用してデータ サービスから非同期的に読み込みます。

BeginLoadProperty(Object, String, Uri, AsyncCallback, Object)

関連エンティティのページを、指定された次のリンク URI を使用してデータ サービスから非同期的に読み込みます。

BeginSaveChanges(AsyncCallback, Object)

変更が最後に保存された後に DataServiceContext によって収集された保留中の変更をデータ サービスに非同期的に送信します。

BeginSaveChanges(SaveChangesOptions, AsyncCallback, Object)

変更が最後に保存された後に DataServiceContext によって収集された保留中の変更をデータ サービスに非同期的に送信します。

CancelRequest(IAsyncResult)

指定された IAsyncResult オブジェクトに関連付けられている操作を取り消そうとします。

CreateQuery<T>(String)

指定されたジェネリック型のデータについてのデータ サービス クエリを作成します。

DeleteLink(Object, String, Object)

DataServiceContext によって追跡されているリンクの一覧でリンクの状態を削除済みに変更します。

DeleteObject(Object)

DataServiceContext で削除されるように、指定されたオブジェクトの状態を変更します。

Detach(Object)

DataServiceContext が追跡しているエンティティの一覧からエンティティを削除します。

DetachLink(Object, String, Object)

DataServiceContext によって追跡されているリンクの一覧から、指定されたリンクを削除します。

EndExecute<TElement>(IAsyncResult)

BeginExecute<TElement>(Uri, AsyncCallback, Object) を完了するために呼び出されます。

EndExecuteBatch(IAsyncResult)

BeginExecuteBatch(AsyncCallback, Object, DataServiceRequest[]) を完了するために呼び出されます。

EndGetReadStream(IAsyncResult)

バイナリ プロパティをストリームとして取得する非同期操作を完了させるために呼び出されます。

EndLoadProperty(IAsyncResult)

BeginLoadProperty(Object, String, AsyncCallback, Object) 操作を完了するために呼び出されます。

EndSaveChanges(IAsyncResult)

BeginSaveChanges(AsyncCallback, Object) 操作を完了するために呼び出されます。

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
Execute<T>(DataServiceQueryContinuation<T>)

要求をデータ サービスに送信して、ページングされたクエリ結果のデータの次のページを取得します。

Execute<TElement>(Uri)

要求をデータ サービスに送信して特定の URI を実行します。

ExecuteBatch(DataServiceRequest[])

クエリのグループをデータ サービスにバッチとして送信します。

GetEntityDescriptor(Object)

指定されたエンティティ オブジェクトの EntityDescriptor を取得します。

GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetLinkDescriptor(Object, String, Object)

2 つのエンティティ間のリレーションシップを定義する特定のリンクの LinkDescriptor を取得します。

GetMetadataUri()

.edmx メタデータの場所の URI を取得します。

GetReadStream(Object)

指定したエンティティのバイナリ プロパティ データをデータ ストリームとして取得します。

GetReadStream(Object, DataServiceRequestArgs)

指定したエンティティのバイナリ プロパティ データを、指定したメッセージ ヘッダーと共にデータ ストリームとして取得します。

GetReadStream(Object, String)

Accept メッセージ ヘッダーを指定して、指定したエンティティのバイナリ プロパティ データをデータ ストリームとして取得します。

GetReadStreamUri(Object)

バイナリ プロパティ データをデータ ストリームとして返すために使用する URI を取得します。

GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
LoadProperty(Object, String)

指定されたプロパティの遅延コンテンツをデータ サービスから読み込みます。

LoadProperty(Object, String, DataServiceQueryContinuation)

関連エンティティの次のページを、指定されたクエリ連結オブジェクトを使用してデータ サービスから読み込みます。

LoadProperty(Object, String, Uri)

関連エンティティのページを、指定された次のリンク URI を使用して読み込みます。

LoadProperty<T>(Object, String, DataServiceQueryContinuation<T>)

関連エンティティの次のページを、指定された汎用クエリ連結オブジェクトを使用してデータ サービスから読み込みます。

MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
SaveChanges()

DataServiceContext が追跡している変更をストレージに保存します。

SaveChanges(SaveChangesOptions)

DataServiceContext が追跡している変更をストレージに保存します。

SetLink(Object, String, Object)

指定されたオブジェクト間に新しいリンクが存在することと、そのリンクが DataServiceContext パラメーターで指定されたプロパティによって表されることを sourceProperty に通知します。

SetSaveStream(Object, Stream, Boolean, DataServiceRequestArgs)

要求メッセージの設定を指定して、新しいデータ ストリームをエンティティのバイナリ プロパティとして設定します。

SetSaveStream(Object, Stream, Boolean, String, String)

新しいデータ ストリームをエンティティのバイナリ プロパティとして設定します。 指定した Content-Type ヘッダーと Slug ヘッダーが要求メッセージに含まれます。

ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)
TryGetEntity<TEntity>(Uri, TEntity)

DataServiceContext によって追跡されているエンティティの取得を、そのエンティティの URI への参照によってテストします。

TryGetUri(Object, Uri)

指定されたエンティティに関連付けられた正規 URI がある場合は、それを取得します。

UpdateObject(Object)

DataServiceContext 内で指定されたオブジェクトの状態を Modified に変更します。

イベント

ReadingEntity

エンティティ データがエンティティ オブジェクトに完全に読み取られた後に発生します。

SendingRequest

新しい HttpWebRequest が作成されたときに発生します。

WritingEntity

エンティティが要求メッセージで XML に完全にシリアル化された後に発生します。

適用対象

こちらもご覧ください