Udostępnij za pośrednictwem


ObjectContext.ExecuteStoreQuery Metoda

Definicja

Przeciążenia

ExecuteStoreQuery<TElement>(String, Object[])

Wykonuje zapytanie bezpośrednio względem źródła danych, które zwraca sekwencję wpisanych wyników.

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

Wykonuje zapytanie bezpośrednio względem źródła danych i zwraca sekwencję wpisanych wyników. Określ zestaw jednostek i opcję scalania, aby wyniki zapytania mogły być śledzone jako jednostki.

ExecuteStoreQuery<TElement>(String, Object[])

Wykonuje zapytanie bezpośrednio względem źródła danych, które zwraca sekwencję wpisanych wyników.

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 zwracanych danych.

Parametry

commandText
String

Polecenie do wykonania w języku natywnym źródła danych.

parameters
Object[]

Tablica parametrów do przekazania do polecenia.

Zwraca

ObjectResult<TElement>

Wyliczenie obiektów typu TElement.

Uwagi

Metoda ExecuteStoreQuery używa istniejącego połączenia, aby wykonać dowolne polecenie bezpośrednio względem źródła danych. Polecenie store jest wykonywane w kontekście bieżącej transakcji, jeśli taka transakcja istnieje.

ExecuteStoreQuery Wywoływanie metody jest równoważne wywołaniu ExecuteReader metody DbCommand klasy , zwraca tylko ExecuteStoreQuery jednostki i ExecuteReader zwraca wartości właściwości w obiekcie DbDataReader.

Wywołaj element ExecuteStoreQuery z określoną nazwą zestawu jednostek, jeśli chcesz śledzić wyniki.

Wywołaj metodę Translate , aby przetłumaczyć DbDataReader obiekt na obiekty jednostki, gdy czytnik zawiera wiersze danych mapowane na określony typ jednostki.

Użycie sparametryzowanych poleceń pomaga chronić przed atakami polegającymi na wstrzyknięciu kodu SQL, w których osoba atakująca "wprowadza" polecenie w instrukcję SQL, która narusza zabezpieczenia na serwerze. Polecenia sparametryzowane chronią przed atakiem polegającym na wstrzyknięciu kodu SQL, gwarantując, że wartości odebrane ze źródła zewnętrznego są przekazywane tylko jako wartości, a nie część instrukcji SQL. W związku z tym polecenia SQL wstawione do wartości nie są wykonywane w źródle danych. Zamiast tego są one oceniane tylko jako wartość parametru. Oprócz korzyści zabezpieczeń sparametryzowane polecenia zapewniają wygodną metodę organizowania wartości przekazywanych za pomocą instrukcji SQL lub procedury składowanej.

Wartość parameters może być tablicą DbParameter obiektów lub tablicą wartości parametrów. Jeśli podano tylko wartości, tablica DbParameter obiektów jest tworzona na podstawie kolejności wartości w tablicy.

Aby uzyskać więcej informacji, zobacz:

Bezpośrednie wykonywanie poleceń magazynu i

Instrukcje: bezpośrednie wykonywanie poleceń względem źródła danych

Dotyczy

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

Wykonuje zapytanie bezpośrednio względem źródła danych i zwraca sekwencję wpisanych wyników. Określ zestaw jednostek i opcję scalania, aby wyniki zapytania mogły być śledzone jako jednostki.

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 jednostki zwracanych danych.

Parametry

commandText
String

Polecenie do wykonania w języku natywnym źródła danych.

entitySetName
String

Zestaw TEntity jednostek typu. Jeśli nie podano nazwy zestawu jednostek, wyniki nie będą śledzone.

mergeOption
MergeOption

Element MergeOption do użycia podczas wykonywania zapytania. Wartość domyślna to AppendOnly.

parameters
Object[]

Tablica parametrów do przekazania do polecenia.

Zwraca

ObjectResult<TEntity>

Wyliczenie obiektów typu TResult.

Uwagi

Metoda ExecuteStoreQuery używa istniejącego połączenia, aby wykonać dowolne polecenie bezpośrednio względem źródła danych. Polecenie store jest wykonywane w kontekście bieżącej transakcji, jeśli taka transakcja istnieje.

ExecuteStoreQuery Wywoływanie metody jest równoważne wywołaniu ExecuteReader metody DbCommand klasy , zwraca tylko ExecuteStoreQuery jednostki i ExecuteReader zwraca wartości właściwości w obiekcie DbDataReader.

Określ nazwę zestawu jednostek, jeśli chcesz śledzić wyniki jako jednostki.

Wywołaj Translate metodę , aby przetłumaczyć DbDataReader obiekt na obiekty jednostki, gdy czytnik zawiera wiersze danych mapowane na określony typ jednostki.

Użycie sparametryzowanych poleceń pomaga chronić przed atakami polegającymi na wstrzyknięciu kodu SQL, w których osoba atakująca "wprowadza" polecenie w instrukcję SQL, która narusza zabezpieczenia na serwerze. Polecenia sparametryzowane chronią przed atakiem polegającym na wstrzyknięciu kodu SQL, gwarantując, że wartości odebrane ze źródła zewnętrznego są przekazywane tylko jako wartości, a nie część instrukcji SQL. W związku z tym polecenia SQL wstawione do wartości nie są wykonywane w źródle danych. Zamiast tego są one oceniane tylko jako wartość parametru. Oprócz korzyści zabezpieczeń sparametryzowane polecenia zapewniają wygodną metodę organizowania wartości przekazywanych za pomocą instrukcji SQL lub procedury składowanej.

Wartość parameters może być tablicą DbParameter obiektów lub tablicą wartości parametrów. Jeśli podano tylko wartości, tablica DbParameter obiektów jest tworzona na podstawie kolejności wartości w tablicy.

Aby uzyskać więcej informacji, zobacz:

Bezpośrednie wykonywanie poleceń magazynu i

Instrukcje: bezpośrednie wykonywanie poleceń względem źródła danych

Dotyczy