DataServiceContext クラス
DataServiceContext は、データ サービスのランタイム コンテキストを表します。
継承階層
System.Object
System.Data.Services.Client.DataServiceContext
名前空間: System.Data.Services.Client
アセンブリ: Microsoft.Data.Services.Client (Microsoft.Data.Services.Client.dll)
構文
'宣言
Public Class DataServiceContext
'使用
Dim instance As DataServiceContext
public class DataServiceContext
public ref class DataServiceContext
type DataServiceContext = class end
public class DataServiceContext
DataServiceContext 型は、以下のメンバーを公開しています。
コンストラクター
名前 | 説明 | |
---|---|---|
DataServiceContext() | DataServiceContext クラスの新しいインスタンスを初期化します。 | |
DataServiceContext(Uri) | 指定した serviceRoot を使用して、DataServiceContext クラスの新しいインスタンスを初期化します。 | |
DataServiceContext(Uri, DataServiceProtocolVersion) | 指定した serviceRoot を使用し、特定の maxProtocolVersion を対象として、DataServiceContext クラスの新しいインスタンスを初期化します。 |
先頭に戻る
プロパティ
名前 | 説明 | |
---|---|---|
AddAndUpdateResponsePreference | データ サービスが変更要求に対する応答メッセージでエンティティ データを返すようにクライアントが要求するかどうかを取得または設定します。 | |
ApplyingChanges | DataServiceContext が追跡対象オブジェクトに現在変更を適用しているかどうかを示す値を取得します。 | |
BaseUri | 対象データ サービスのルートを識別する絶対 URI を取得します。 | |
Credentials | DataServiceContext オブジェクトを使用して作成された各クエリで使用される認証情報を取得または設定します。 | |
DataNamespace | Atom ペイロードのデータ項目 (メタデータ項目ではない) の XML 名前空間を取得または設定します。 | |
Entities | 現在 DataServiceContext によって追跡されているすべてのリソースの一覧を取得します。 | |
HttpStack | データ サービスにアクセスするときに使用する HTTP 実装の種類を示す値を取得します。Silverlight の WCF Data Services 5.0 クライアントでのみサポートされています。 | |
IgnoreMissingProperties | 型から読み取られたプロパティをクライアント側の型のプロパティにマップする必要があるかどうかを取得または設定します。 | |
IgnoreResourceNotFoundException | データ サービスから 404 エラー (リソースが見つかりません) が返された場合に例外を発生させるかどうかを取得または設定します。 | |
Links | 現在 DataServiceContext オブジェクトによって追跡されているすべての関連付けまたはリンクのコレクションを取得します。 | |
MaxProtocolVersion | クライアントが使用できる Open Data Protocol (OData) の最大バージョンを取得します。 | |
MergeOption | データ サービスからエンティティを受け取るための同期オプションを取得または設定します。 | |
ResolveEntitySet | 編集リンクや自己リンクの URI から値を特定できない場合にエンティティ セット URI を解決するために使用するデリゲート メソッドを取得または設定します。 | |
ResolveName | エンティティをデータ サービスに送信するときにクライアント ライブラリによって使用される、既定の型解決方法をオーバーライドする関数を取得または設定します。 | |
ResolveType | エンティティをデータ サービスから受信するときにクライアント ライブラリによって使用される、既定の型解決オプションをオーバーライドする関数を取得または設定します。 | |
SaveChangesDefaultOptions | SaveChanges メソッドによって使用される SaveChangesOptions 値を取得または設定します。 | |
Timeout | データ サービスに対する基になる HTTP 要求に使用されるタイムアウト オプション (秒単位) を取得または設定します。 | |
TypeScheme | サービスが使用する型スキームを示すために使用される URI を取得または設定します。 | |
UseDefaultCredentials | データ サービスへの要求を認証するために既定の資格情報を使用するかどうかを取得または設定します。Silverlight の WCF Data Services 5.0 クライアントでのみサポートされています。 | |
UsePostTunneling | ポスト トンネルを使用するかどうかを示すブール値を取得または設定します。 |
先頭に戻る
メソッド
名前 | 説明 | |
---|---|---|
AddLink | DataServiceContext が追跡しているオブジェクトのセットに、指定されたリンクを追加します。 | |
AddObject | DataServiceContext が追跡しているオブジェクトのセットに、指定されたオブジェクトを追加します。 | |
AddRelatedObject | 関連オブジェクトをコンテキストに追加し、1 つの要求の 2 つのオブジェクト間のリレーションシップを定義するリンクを作成します。 | |
AttachLink | エンティティ オブジェクト間のリレーションシップを定義する指定されたリンクの追跡を開始するように DataServiceContext に通知します。 | |
AttachTo(String, Object) | 指定されたリソースの追跡を開始するように DataServiceContext に通知し、指定されたリソース セット内のそのリソースの場所を提供します。 | |
AttachTo(String, Object, String) | 指定されたリソースの追跡を開始するように DataServiceContext に通知し、指定されたリソース セット内のそのリソースの場所を提供します。 | |
BeginExecute(Uri, AsyncCallback, Object, String, array<OperationParameter[]) | 要求をデータ サービスに非同期的に送信して特定の URI を実行します。 | |
BeginExecute<TElement>(Uri, AsyncCallback, Object) | サービスからの結果の待機中にこの呼び出しによって処理がブロックされないように、要求を非同期的に送信します。 | |
BeginExecute<T>(DataServiceQueryContinuation<T>, AsyncCallback, Object) | 要求をデータ サービスに非同期的に送信して、ページングされたクエリ結果のデータの次のページを取得します。 | |
BeginExecute<TElement>(Uri, AsyncCallback, Object, String, Boolean, array<OperationParameter[]) | 要求をデータ サービスに非同期的に送信して特定の URI を実行します。 | |
BeginExecuteBatch | クエリのグループをデータ サービスにバッチとして非同期的に送信します。 | |
BeginGetReadStream(Object, DataServiceRequestArgs, AsyncCallback, Object) | 指定されたメッセージ ヘッダーを使用して、指定されたエンティティに属するバイナリ データ ストリームを非同期的に取得します。 | |
BeginGetReadStream(Object, String, 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 オブジェクトに関連付けられている操作を取り消そうとします。 | |
CreateQuery<T> | 指定されたジェネリック型のデータについてのデータ サービス クエリを作成します。 | |
DeleteLink | DataServiceContext によって追跡されているリンクの一覧でリンクの状態を削除済みに変更します。 | |
DeleteObject | DataServiceContext で削除されるように、指定されたオブジェクトの状態を変更します。 | |
Detach | DataServiceContext が追跡しているエンティティの一覧からエンティティを削除します。 | |
DetachLink | DataServiceContext によって追跡されているリンクの一覧から、指定されたリンクを削除します。 | |
EndExecute(IAsyncResult) | BeginExecute を完了するために呼び出されます。 | |
EndExecute<TElement>(IAsyncResult) | BeginExecute を完了するために呼び出されます。 | |
EndExecuteBatch | BeginExecuteBatch を完了するために呼び出されます。 | |
EndGetReadStream | バイナリ データ ストリームを取得する非同期操作を完了するために呼び出されます。 | |
EndLoadProperty | BeginLoadProperty 操作を完了するために呼び出されます。 | |
EndSaveChanges | BeginSaveChanges 操作を完了するために呼び出されます。 | |
Equals | (Object から継承されています。) | |
Execute(Uri, String, array<OperationParameter[]) | データ サービスに要求を送信して、特定の HTTP メソッドを使用して特定の URI を実行します。Silverlight の WCF Data Services 5.0 クライアントではサポートされていません。 | |
Execute<TElement>(Uri) | 要求をデータ サービスに送信して特定の URI を実行します。Silverlight の WCF Data Services 5.0 クライアントではサポートされていません。 | |
Execute<T>(DataServiceQueryContinuation<T>) | 要求をデータ サービスに送信して、ページングされたクエリ結果のデータの次のページを取得します。Silverlight の WCF Data Services 5.0 クライアントではサポートされていません。 | |
Execute<TElement>(Uri, String, Boolean, array<OperationParameter[]) | データ サービスに要求を送信して、特定の HTTP メソッドを使用して特定の URI を実行します。Silverlight の WCF Data Services 5.0 クライアントではサポートされていません。 | |
ExecuteBatch | クエリのグループをデータ サービスにバッチとして同期的に送信します。Silverlight の WCF Data Services 5.0 クライアントではサポートされていません。 | |
Finalize | (Object から継承されています。) | |
GetEntityDescriptor | 指定されたエンティティ オブジェクトの EntityDescriptor を取得します。 | |
GetHashCode | (Object から継承されています。) | |
GetLinkDescriptor | 2 つのエンティティ間のリレーションシップを定義する特定のリンクの LinkDescriptor を取得します。 | |
GetMetadataUri | .edmx メタデータの場所の URI を取得します。 | |
GetReadStream(Object) | 指定されたエンティティに属しているバイナリ データ ストリームを取得します。Silverlight の WCF Data Services 5.0 クライアントではサポートされていません。 | |
GetReadStream(Object, DataServiceRequestArgs) | 指定されたメッセージ ヘッダーを使用して、指定されたエンティティのバイナリ データ ストリームを取得します。Silverlight の WCF Data Services 5.0 クライアントではサポートされていません。 | |
GetReadStream(Object, String) | 指定された Content-Type メッセージ ヘッダーを使用して、指定されたエンティティに属するバイナリ データ ストリームを取得します。Silverlight の WCF Data Services 5.0 クライアントではサポートされていません。 | |
GetReadStream(Object, String, DataServiceRequestArgs) | 指定された Content-Type メッセージ ヘッダーを使用して、指定されたエンティティに属する名前付きバイナリ データ ストリームを取得します。Silverlight の WCF Data Services 5.0 クライアントではサポートされていません。 | |
GetReadStreamUri(Object) | バイナリ データ ストリームを返すために使用する URI を取得します。 | |
GetReadStreamUri(Object, String) | 名前付きバイナリ データ ストリームを返すために使用する URI を取得します。 | |
GetType | (Object から継承されています。) | |
LoadProperty(Object, String) | 指定されたプロパティの遅延コンテンツをデータ サービスから読み込みます。Silverlight の WCF Data Services 5.0 クライアントではサポートされていません。 | |
LoadProperty(Object, String, DataServiceQueryContinuation) | 関連エンティティの次のページを、指定されたクエリ連結オブジェクトを使用してデータ サービスから読み込みます。Silverlight の WCF Data Services 5.0 クライアントではサポートされていません。 | |
LoadProperty(Object, String, Uri) | 関連エンティティのページを、指定された次のリンク URI を使用して読み込みます。Silverlight の WCF Data Services 5.0 クライアントではサポートされていません。 | |
LoadProperty<T>(Object, String, DataServiceQueryContinuation<T>) | 関連エンティティの次のページを、指定された汎用クエリ連結オブジェクトを使用してデータ サービスから読み込みます。Silverlight の WCF Data Services 5.0 クライアントではサポートされていません。 | |
MemberwiseClone | (Object から継承されています。) | |
SaveChanges() | DataServiceContext が追跡している変更をストレージに保存します。Silverlight の WCF Data Services 5.0 クライアントではサポートされていません。 | |
SaveChanges(SaveChangesOptions) | DataServiceContext が追跡している変更をストレージに保存します。Silverlight の WCF Data Services 5.0 クライアントではサポートされていません。 | |
SetLink | 指定されたオブジェクト間に新しいリンクが存在することと、そのリンクが sourceProperty パラメーターで指定されたプロパティによって表されることを DataServiceContext に通知します。 | |
SetSaveStream(Object, Stream, Boolean, DataServiceRequestArgs) | 要求メッセージに指定されたヘッダーを使用して、指定されたエンティティのバイナリ データ ストリームを設定します。 | |
SetSaveStream(Object, Stream, Boolean, String, String) | 要求メッセージに指定された Content-Type および Slug ヘッダーを使用して、指定されたエンティティに属するバイナリ データ ストリームを設定します。 | |
SetSaveStream(Object, String, Stream, Boolean, DataServiceRequestArgs) | 指定された要求メッセージのヘッダーを使用して、指定されたエンティティに属する名前付きバイナリ データ ストリームを設定します。 | |
SetSaveStream(Object, String, Stream, Boolean, String) | 指定されたエンティティのバイナリ データ ストリームを設定します。 | |
ToString | (Object から継承されています。) | |
TryGetEntity<TEntity> | DataServiceContext によって追跡されているエンティティの取得を、そのエンティティの URI への参照によってテストします。 | |
TryGetUri | 指定されたエンティティに関連付けられた正規 URI がある場合は、それを取得します。 | |
UpdateObject | DataServiceContext 内で指定されたオブジェクトの状態を Modified に変更します。 |
先頭に戻る
イベント
名前 | 説明 | |
---|---|---|
ReadingEntity | エンティティ データがエンティティ オブジェクトに完全に読み取られた後に発生します。 | |
SendingRequest | 新しい HttpWebRequest が作成されたときに発生します。 | |
SendingRequest2 | 新しい HttpWebRequest が作成されたときに発生します。 | |
WritingEntity | エンティティが要求メッセージで XML に完全にシリアル化された後に発生します。 |
先頭に戻る
説明
WCF Data Services はステートレスですが、DataServiceContext はステートレスではありません。 更新管理などの機能をサポートするために、クライアントでの状態は対話間で維持されます。 このクラスと、データ サービスへの特定の HTTP 要求を表す DataServiceQuery クラスが、クライアント ライブラリにおける 2 つの主要なクラスです。
使用例
次の例は、サービス参照の追加ツールによって生成される DataServiceContext を使用して、すべての顧客を返すクエリを Northwind データ サービスに対して暗黙的に実行する方法を示します。 要求された Customers エンティティ セットの URI は、コンテキストによって自動的に決定されます。 クエリは、列挙が行われるときに暗黙的に実行されます。 Northwind データ サービスは、WCF Data Services クイック スタートを完了したときに作成されます。
' 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
// 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);
}
スレッド セーフ
この型の public static (Visual Basic では Shared) のメンバーはすべて、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。
関連項目
参照
System.Data.Services.Client 名前空間