次の方法で共有


ObjectContext.ExecuteStoreQuery メソッド

定義

オーバーロード

名前 説明
ExecuteStoreQuery<TElement>(String, Object[])

型指定された結果のシーケンスを返すデータ ソースに対して直接クエリを実行します。

ExecuteStoreQuery<TEntity>(String, String, MergeOption, Object[])

データ ソースに対して直接クエリを実行し、型指定された結果のシーケンスを返します。 クエリ結果をエンティティとして追跡できるように、エンティティ セットとマージ オプションを指定します。

ExecuteStoreQuery<TElement>(String, Object[])

型指定された結果のシーケンスを返すデータ ソースに対して直接クエリを実行します。

public:
generic <typename TElement>
 System::Data::Objects::ObjectResult<TElement> ^ ExecuteStoreQuery(System::String ^ commandText, ... cli::array <System::Object ^> ^ parameters);
public System.Data.Objects.ObjectResult<TElement> ExecuteStoreQuery<TElement>(string commandText, params object[] parameters);
member this.ExecuteStoreQuery : string * obj[] -> System.Data.Objects.ObjectResult<'Element>
Public Function ExecuteStoreQuery(Of TElement) (commandText As String, ParamArray parameters As Object()) As ObjectResult(Of TElement)

型パラメーター

TElement

返されるデータの型。

パラメーター

commandText
String

データ ソースのネイティブ言語で実行するコマンド。

parameters
Object[]

コマンドに渡すパラメーターの配列。

返品

ObjectResult<TElement>

TElement型のオブジェクトの列挙。

注釈

ExecuteStoreQueryメソッドは、既存の接続を使用して、データ ソースに対して直接任意のコマンドを実行します。 このようなトランザクションが存在する場合、store コマンドは現在のトランザクションのコンテキストで実行されます。

ExecuteStoreQuery メソッドの呼び出しは、DbCommand クラスのExecuteReader メソッドを呼び出すことと同じです。ExecuteStoreQueryはエンティティのみを返し、ExecuteReaderDbDataReaderのプロパティ値を返します。

結果を追跡する場合は、指定したエンティティ セット名で ExecuteStoreQuery を呼び出します。

Translate メソッドを呼び出して、リーダーに、指定したエンティティ型にマップされるデータ行が含まれている場合に、DbDataReaderをエンティティ オブジェクトに変換します。

パラメーター化コマンドは SQL インジェクション攻撃への対策として利用できます。SQL インジェクション攻撃は、SQL ステートメントに、サーバーのセキュリティを侵害するコマンドを "注入" することによって行われます。 パラメーター化されたコマンドは、外部ソースから受け取った値が SQL ステートメントの一部ではなく値としてのみ渡されることを保証することで、SQL インジェクション攻撃から保護します。 その結果、値に挿入された SQL コマンドはデータ ソースでは実行されません。 代わりに、パラメーター値としてのみ評価されます。 パラメーター化されたコマンドは、セキュリティ上の利点に加えて、SQL ステートメントまたはストアド プロシージャで渡される値を整理するための便利な方法を提供します。

parameters値には、DbParameterオブジェクトの配列またはパラメーター値の配列を指定できます。 値のみを指定すると、配列内の値の順序に基づいて DbParameter オブジェクトの配列が作成されます。

適用対象

ExecuteStoreQuery<TEntity>(String, String, MergeOption, Object[])

データ ソースに対して直接クエリを実行し、型指定された結果のシーケンスを返します。 クエリ結果をエンティティとして追跡できるように、エンティティ セットとマージ オプションを指定します。

public:
generic <typename TEntity>
 System::Data::Objects::ObjectResult<TEntity> ^ ExecuteStoreQuery(System::String ^ commandText, System::String ^ entitySetName, System::Data::Objects::MergeOption mergeOption, ... cli::array <System::Object ^> ^ parameters);
public System.Data.Objects.ObjectResult<TEntity> ExecuteStoreQuery<TEntity>(string commandText, string entitySetName, System.Data.Objects.MergeOption mergeOption, params object[] parameters);
member this.ExecuteStoreQuery : string * string * System.Data.Objects.MergeOption * obj[] -> System.Data.Objects.ObjectResult<'Entity>
Public Function ExecuteStoreQuery(Of TEntity) (commandText As String, entitySetName As String, mergeOption As MergeOption, ParamArray parameters As Object()) As ObjectResult(Of TEntity)

型パラメーター

TEntity

返されるデータのエンティティ型。

パラメーター

commandText
String

データ ソースのネイティブ言語で実行するコマンド。

entitySetName
String

TEntity型のエンティティ セット。 エンティティ セット名が指定されていない場合、結果は追跡されません。

mergeOption
MergeOption

クエリの実行時に使用する MergeOption 。 既定値は、AppendOnly です。

parameters
Object[]

コマンドに渡すパラメーターの配列。

返品

ObjectResult<TEntity>

TResult型のオブジェクトの列挙。

注釈

ExecuteStoreQueryメソッドは、既存の接続を使用して、データ ソースに対して直接任意のコマンドを実行します。 このようなトランザクションが存在する場合、store コマンドは現在のトランザクションのコンテキストで実行されます。

ExecuteStoreQuery メソッドの呼び出しは、DbCommand クラスのExecuteReader メソッドを呼び出すことと同じです。ExecuteStoreQueryはエンティティのみを返し、ExecuteReaderDbDataReaderのプロパティ値を返します。

結果をエンティティとして追跡する場合は、エンティティ セット名を指定します。

リーダー Translate 指定したエンティティ型にマップされるデータ行が含まれている場合に、 DbDataReader をエンティティ オブジェクトに変換するメソッドを呼び出します。

パラメーター化コマンドは SQL インジェクション攻撃への対策として利用できます。SQL インジェクション攻撃は、SQL ステートメントに、サーバーのセキュリティを侵害するコマンドを "注入" することによって行われます。 パラメーター化されたコマンドは、外部ソースから受け取った値が SQL ステートメントの一部ではなく値としてのみ渡されることを保証することで、SQL インジェクション攻撃から保護します。 その結果、値に挿入された SQL コマンドはデータ ソースでは実行されません。 代わりに、パラメーター値としてのみ評価されます。 パラメーター化されたコマンドは、セキュリティ上の利点に加えて、SQL ステートメントまたはストアド プロシージャで渡される値を整理するための便利な方法を提供します。

parameters値には、DbParameterオブジェクトの配列またはパラメーター値の配列を指定できます。 値のみを指定すると、配列内の値の順序に基づいて DbParameter オブジェクトの配列が作成されます。

適用対象