ObjectContext.ExecuteStoreQuery Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Überlädt
| Name | Beschreibung |
|---|---|
| ExecuteStoreQuery<TElement>(String, Object[]) |
Führt eine Abfrage direkt für die Datenquelle aus, die eine Abfolge der eingegebenen Ergebnisse zurückgibt. |
| ExecuteStoreQuery<TEntity>(String, String, MergeOption, Object[]) |
Führt eine Abfrage direkt für die Datenquelle aus und gibt eine Sequenz der eingegebenen Ergebnisse zurück. Geben Sie den Entitätssatz und die Seriendruckoption an, damit Abfrageergebnisse als Entitäten nachverfolgt werden können. |
ExecuteStoreQuery<TElement>(String, Object[])
Führt eine Abfrage direkt für die Datenquelle aus, die eine Abfolge der eingegebenen Ergebnisse zurückgibt.
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)
Typparameter
- TElement
Der Typ der zurückgegebenen Daten.
Parameter
- commandText
- String
Der auszuführende Befehl in der nativen Sprache der Datenquelle.
- parameters
- Object[]
Ein Array von Parametern, die an den Befehl übergeben werden sollen.
Gibt zurück
Eine Aufzählung von Objekten vom Typ TElement.
Hinweise
Die ExecuteStoreQuery Methode verwendet die vorhandene Verbindung, um einen beliebigen Befehl direkt für die Datenquelle auszuführen. Der Speicherbefehl wird im Kontext der aktuellen Transaktion ausgeführt, wenn eine solche Transaktion vorhanden ist.
Das Aufrufen der ExecuteStoreQuery Methode entspricht dem Aufrufen der ExecuteReader Methode der DbCommand Klasse, gibt nur ExecuteStoreQuery Entitäten und die ExecuteReader Rückgabeeigenschaftenwerte in der DbDataReaderKlasse zurück.
Rufen Sie den ExecuteStoreQuery Namen mit dem angegebenen Entitätssatz auf, wenn die Ergebnisse nachverfolgt werden sollen.
Rufen Sie die Translate Methode auf, um eine DbDataReader in Entitätsobjekte zu übersetzen, wenn der Leser Datenzeilen enthält, die dem angegebenen Entitätstyp zugeordnet sind.
Die Verwendung parametrisierter Befehle hilft beim Schutz vor SQL Injection-Angriffen, bei denen ein Angreifer einen SQL-Befehl in eine SQL-Anweisung einschleust, der die Sicherheit auf dem Server gefährdet. Parametrisierte Befehle schützen vor einem SQL-Einfügeangriff, indem sichergestellt wird, dass von einer externen Quelle empfangene Werte nur als Werte und nicht als Teil der SQL-Anweisung übergeben werden. Daher werden in einen Wert eingefügte SQL-Befehle nicht an der Datenquelle ausgeführt. Stattdessen werden sie nur als Parameterwert ausgewertet. Zusätzlich zu den Sicherheitsvorteilen bieten parametrisierte Befehle eine bequeme Methode zum Organisieren von Werten, die mit einer SQL-Anweisung oder an eine gespeicherte Prozedur übergeben werden.
Der parameters Wert kann ein Array von DbParameter Objekten oder ein Array von Parameterwerten sein. Wenn nur Werte angegeben werden, wird ein Array von DbParameter Objekten basierend auf der Reihenfolge der Werte im Array erstellt.
Gilt für:
ExecuteStoreQuery<TEntity>(String, String, MergeOption, Object[])
Führt eine Abfrage direkt für die Datenquelle aus und gibt eine Sequenz der eingegebenen Ergebnisse zurück. Geben Sie den Entitätssatz und die Seriendruckoption an, damit Abfrageergebnisse als Entitäten nachverfolgt werden können.
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)
Typparameter
- TEntity
Der Entitätstyp der zurückgegebenen Daten.
Parameter
- commandText
- String
Der auszuführende Befehl in der nativen Sprache der Datenquelle.
- entitySetName
- String
Der Entitätssatz des TEntity Typs. Wenn kein Entitätssatzname angegeben wird, werden die Ergebnisse nicht nachverfolgt.
- mergeOption
- MergeOption
Die MergeOption zu verwendende Verwendung beim Ausführen der Abfrage. Der Standardwert lautet AppendOnly.
- parameters
- Object[]
Ein Array von Parametern, die an den Befehl übergeben werden sollen.
Gibt zurück
Eine Aufzählung von Objekten vom Typ TResult.
Hinweise
Die ExecuteStoreQuery Methode verwendet die vorhandene Verbindung, um einen beliebigen Befehl direkt für die Datenquelle auszuführen. Der Speicherbefehl wird im Kontext der aktuellen Transaktion ausgeführt, wenn eine solche Transaktion vorhanden ist.
Das Aufrufen der ExecuteStoreQuery Methode entspricht dem Aufrufen der ExecuteReader Methode der DbCommand Klasse, gibt nur ExecuteStoreQuery Entitäten und die ExecuteReader Rückgabeeigenschaftenwerte in der DbDataReaderKlasse zurück.
Geben Sie den Entitätssatznamen an, wenn die Ergebnisse als Entitäten nachverfolgt werden sollen.
Rufen Sie die Methode Translate auf, um eine DbDataReader in Entitätsobjekte zu übersetzen, wenn der Leser Datenzeilen enthält, die dem angegebenen Entitätstyp zugeordnet sind.
Die Verwendung parametrisierter Befehle hilft beim Schutz vor SQL Injection-Angriffen, bei denen ein Angreifer einen SQL-Befehl in eine SQL-Anweisung einschleust, der die Sicherheit auf dem Server gefährdet. Parametrisierte Befehle schützen vor einem SQL-Einfügeangriff, indem sichergestellt wird, dass von einer externen Quelle empfangene Werte nur als Werte und nicht als Teil der SQL-Anweisung übergeben werden. Daher werden in einen Wert eingefügte SQL-Befehle nicht an der Datenquelle ausgeführt. Stattdessen werden sie nur als Parameterwert ausgewertet. Zusätzlich zu den Sicherheitsvorteilen bieten parametrisierte Befehle eine bequeme Methode zum Organisieren von Werten, die mit einer SQL-Anweisung oder an eine gespeicherte Prozedur übergeben werden.
Der parameters Wert kann ein Array von DbParameter Objekten oder ein Array von Parameterwerten sein. Wenn nur Werte angegeben werden, wird ein Array von DbParameter Objekten basierend auf der Reihenfolge der Werte im Array erstellt.