ObjectContext.ExecuteStoreQuery<TElement>-Methode (String, String, ExecutionOptions, Object[])
[Diese Seite bezieht sich auf Entity Framework Version 6. Die neueste Version ist als 'Entity Framework' NuGet-Paket verfügbar. Weitere Informationen zu Entity Framework finden Sie unter msdn.com/data/ef.]
Führt eine Abfrage, die eine Sequenz typisierter Ergebnisse zurückgibt, direkt für die Datenquelle aus. Die Abfrage wird mithilfe der systemeigenen Abfragesprache des Servers, wie SQL, angegeben. Wenn kein Entitätenmengenname angegeben wird, werden die Ergebnisse nach Kontext nachverfolgt. Wie bei allen APIs, die SQL akzeptieren, müssen Sie darauf achten, alle Benutzereingaben zum Schutz vor SQL-Injection-Angriffen zu parametrisieren. Sie können in der SQL-Abfragezeichenfolge Platzhalter für Parameter einschließen und die Parameterwerte anschließend als zusätzliche Argumente angeben. Alle angegebenen Parameterwerte werden automatisch in einen DbParameter konvertiert. context.ExecuteStoreQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); Als Alternative können Sie auch einen DbParameter erstellen und an SqlQuery übergeben. Auf diese Weise können Sie benannte Parameter in der SQL-Abfragezeichenfolge verwenden. context.ExecuteStoreQuery<Post>("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));
Namespace: System.Data.Entity.Core.Objects
Assembly: EntityFramework (in EntityFramework.dll)
Syntax
'Declaration
Public Overridable Function ExecuteStoreQuery(Of TElement) ( _
commandText As String, _
entitySetName As String, _
executionOptions As ExecutionOptions, _
ParamArray parameters As Object() _
) As ObjectResult(Of TElement)
'Usage
Dim instance As ObjectContext
Dim commandText As String
Dim entitySetName As String
Dim executionOptions As ExecutionOptions
Dim parameters As Object()
Dim returnValue As ObjectResult(Of TElement)
returnValue = instance.ExecuteStoreQuery(commandText, _
entitySetName, executionOptions, _
parameters)
public virtual ObjectResult<TElement> ExecuteStoreQuery<TElement>(
string commandText,
string entitySetName,
ExecutionOptions executionOptions,
params Object[] parameters
)
public:
generic<typename TElement>
virtual ObjectResult<TElement>^ ExecuteStoreQuery(
String^ commandText,
String^ entitySetName,
ExecutionOptions^ executionOptions,
... array<Object^>^ parameters
)
abstract ExecuteStoreQuery :
commandText:string *
entitySetName:string *
executionOptions:ExecutionOptions *
parameters:Object[] -> ObjectResult<'TElement>
override ExecuteStoreQuery :
commandText:string *
entitySetName:string *
executionOptions:ExecutionOptions *
parameters:Object[] -> ObjectResult<'TElement>
JScript does not support generic types and methods.
Typparameter
- TElement
Der Elementtyp der Ergebnissequenz.
Parameter
- commandText
Typ: System.String
Die in der systemeigenen Abfragesprache des Servers angegebene Abfrage.
- entitySetName
Typ: System.String
Die Entitätenmenge vom TResult-Typ. Wenn kein Entitätenmengenname angegeben wird, werden die Ergebnisse nicht nachverfolgt.
- executionOptions
Typ: System.Data.Entity.Core.Objects.ExecutionOptions
Die Optionen für die Ausführung dieser Abfrage.
- parameters
Typ: System.Object[]
Die für die Abfrage zu verwendenden Parameterwerte. Werden Ausgabeparameter verwendet, sind deren Werte erst nach vollständigem Lesen der Ergebnisse verfügbar. Dies liegt an dem zugrundeliegenden Verhalten von DbDataReader; weitere Informationen finden Sie unter https://go.microsoft.com/fwlink/?LinkID=398589.
Rückgabewert
Typ: System.Data.Entity.Core.Objects.ObjectResult<TElement>
Eine Aufzählung von Objekten vom Typ TElement.