Share via


Metodo ObjectContext.ExecuteStoreQuery<TElement> (String, String, ExecutionOptions, Object[])

[Questa pagina è specifica della versione 6 di Entity Framework. La versione più recente è disponibile come pacchetto NuGet per "Entity Framework". Per ulteriori informazioni su Entity Framework, vedere la pagina msdn.com/data/ef.]

Esegue una query direttamente sull'origine dati e restituisce una sequenza di risultati tipizzati. La query viene specificata usando il linguaggio di query nativo del server, ad esempio SQL. Se non viene specificato il nome di un set di entità, i risultati vengono rilevati dal contesto. Come con qualsiasi API che accetta SQL, è importante parametrizzare un input utente in modo da fornire protezione da un attacco SQL injection. È possibile includere i segnaposto dei parametri nella stringa di query SQL e quindi fornire i valori dei parametri come argomenti aggiuntivi. Tutti i valori dei parametri forniti verranno convertiti automaticamente in DbParameter. context.ExecuteStoreQuery&amp;lt;Post&amp;gt;("SELECT * FROM dbo.Posts WHERE Author = @p0", userSuppliedAuthor); in alternativa, è anche possibile costruire un oggetto DbParameter e fornirlo a SqlQuery. In questo modo è possibile usare i parametri denominati nella stringa di query SQL. context.ExecuteStoreQuery&amp;lt;Post&amp;gt;("SELECT * FROM dbo.Posts WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

Spazio dei nomi:  System.Data.Entity.Core.Objects
Assembly:  EntityFramework (in EntityFramework.dll)

Sintassi

'Dichiarazione
Public Overridable Function ExecuteStoreQuery(Of TElement) ( _
    commandText As String, _
    entitySetName As String, _
    executionOptions As ExecutionOptions, _
    ParamArray parameters As Object() _
) As ObjectResult(Of TElement)
'Utilizzo
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.

Parametri di tipo

  • TElement
    Tipo di elemento della sequenza di risultati.

Parametri

  • commandText
    Tipo: System.String
    Query specificata nel linguaggio di query nativo del server.
  • entitySetName
    Tipo: System.String
    Set di entità di tipo TResult. Se non viene fornito il nome di un set di entità, i risultati non verranno rilevati.
  • parameters
    Tipo: System.Object[]
    Valori dei parametri da usare per la query. Se si usano parametri di output, i relativi valori non saranno disponibili fino alla lettura completa dei risultati. Questo è dovuto al comportamento sottostante di DbDataReader. Per altre informazioni, vedi https://go.microsoft.com/fwlink/?LinkID=398589.

Valore restituito

Tipo: System.Data.Entity.Core.Objects.ObjectResult<TElement>
Enumerazione di oggetti di tipo TElement.

Vedere anche

Riferimento

ObjectContext Classe

Overload ExecuteStoreQuery

Spazio dei nomi System.Data.Entity.Core.Objects