ObjectContext.ExecuteStoreQuery Metoda

Definice

Přetížení

Name Description
ExecuteStoreQuery<TElement>(String, Object[])

Spustí dotaz přímo na zdroj dat, který vrátí posloupnost zadaných výsledků.

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

Spustí dotaz přímo proti zdroji dat a vrátí sekvenci zadaných výsledků. Zadejte sadu entit a možnost sloučení, aby bylo možné výsledky dotazu sledovat jako entity.

ExecuteStoreQuery<TElement>(String, Object[])

Spustí dotaz přímo na zdroj dat, který vrátí posloupnost zadaných výsledků.

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)

Parametry typu

TElement

Typ vrácených dat.

Parametry

commandText
String

Příkaz, který se má provést, v nativním jazyce zdroje dat.

parameters
Object[]

Pole parametrů, které se mají předat příkazu.

Návraty

ObjectResult<TElement>

Výčet objektů typu TElement.

Poznámky

Metoda ExecuteStoreQuery používá existující připojení ke spuštění libovolného příkazu přímo proti zdroji dat. Příkaz store se spustí v kontextu aktuální transakce, pokud taková transakce existuje.

ExecuteStoreQuery Volání metody je ekvivalentní volání ExecuteReader metody DbCommand třídy, vrací pouze ExecuteStoreQuery entity a ExecuteReader vrací hodnoty vlastností v objektu DbDataReader.

ExecuteStoreQuery Pokud chcete sledovat výsledky, zavolejte s názvem zadané sady entit.

Translate Voláním metody přeložíte DbDataReader objekty entity, pokud čtenář obsahuje datové řádky, které se mapují na zadaný typ entity.

Použití parametrizovaných příkazů pomáhá chránit před útoky prostřednictvím injektáže SQL, ve kterých útočník "vloží" příkaz do příkazu SQL, který ohrožuje zabezpečení na serveru. Parametrizované příkazy chrání před útokem prostřednictvím injektáže SQL tím, že zaručuje, že hodnoty přijaté z externího zdroje se předávají pouze jako hodnoty, a ne jako součást příkazu SQL. V důsledku toho se příkazy SQL vložené do hodnoty nespouštějí ve zdroji dat. Spíše se vyhodnocují pouze jako hodnota parametru. Kromě výhod zabezpečení poskytují parametrizované příkazy pohodlnou metodu pro uspořádání hodnot předaných příkazem SQL nebo uloženou procedurou.

Hodnota parameters může být pole DbParameter objektů nebo pole hodnot parametrů. Pokud jsou zadány pouze hodnoty, vytvoří se pole DbParameter objektů na základě pořadí hodnot v poli.

Platí pro

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

Spustí dotaz přímo proti zdroji dat a vrátí sekvenci zadaných výsledků. Zadejte sadu entit a možnost sloučení, aby bylo možné výsledky dotazu sledovat jako entity.

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)

Parametry typu

TEntity

Typ entity vrácených dat.

Parametry

commandText
String

Příkaz, který se má provést, v nativním jazyce zdroje dat.

entitySetName
String

Sada entit TEntity typu. Pokud není zadaný název sady entit, výsledky se nesledují.

mergeOption
MergeOption

Použití MergeOption při provádění dotazu. Výchozí hodnota je AppendOnly.

parameters
Object[]

Pole parametrů, které se mají předat příkazu.

Návraty

ObjectResult<TEntity>

Výčet objektů typu TResult.

Poznámky

Metoda ExecuteStoreQuery používá existující připojení ke spuštění libovolného příkazu přímo proti zdroji dat. Příkaz store se spustí v kontextu aktuální transakce, pokud taková transakce existuje.

ExecuteStoreQuery Volání metody je ekvivalentní volání ExecuteReader metody DbCommand třídy, vrací pouze ExecuteStoreQuery entity a ExecuteReader vrací hodnoty vlastností v objektu DbDataReader.

Pokud chcete, aby se výsledky sledovaly jako entity, zadejte název sady entit.

Metoda volání Translate , která přeloží DbDataReader objekty entity, pokud čtenář obsahuje datové řádky, které se mapují na zadaný typ entity.

Použití parametrizovaných příkazů pomáhá chránit před útoky prostřednictvím injektáže SQL, ve kterých útočník "vloží" příkaz do příkazu SQL, který ohrožuje zabezpečení na serveru. Parametrizované příkazy chrání před útokem prostřednictvím injektáže SQL tím, že zaručuje, že hodnoty přijaté z externího zdroje se předávají pouze jako hodnoty, a ne jako součást příkazu SQL. V důsledku toho se příkazy SQL vložené do hodnoty nespouštějí ve zdroji dat. Spíše se vyhodnocují pouze jako hodnota parametru. Kromě výhod zabezpečení poskytují parametrizované příkazy pohodlnou metodu pro uspořádání hodnot předaných příkazem SQL nebo uloženou procedurou.

Hodnota parameters může být pole DbParameter objektů nebo pole hodnot parametrů. Pokud jsou zadány pouze hodnoty, vytvoří se pole DbParameter objektů na základě pořadí hodnot v poli.

Platí pro