ObjectContext.ExecuteStoreQuery Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Overloads
| Name | Description |
|---|---|
| ExecuteStoreQuery<TElement>(String, Object[]) |
Voert een query rechtstreeks uit op de gegevensbron die een reeks getypte resultaten retourneert. |
| ExecuteStoreQuery<TEntity>(String, String, MergeOption, Object[]) |
Voert een query rechtstreeks uit op de gegevensbron en retourneert een reeks getypte resultaten. Geef de entiteitsset en de samenvoegoptie op, zodat queryresultaten kunnen worden bijgehouden als entiteiten. |
ExecuteStoreQuery<TElement>(String, Object[])
Voert een query rechtstreeks uit op de gegevensbron die een reeks getypte resultaten retourneert.
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)
Type parameters
- TElement
Het type geretourneerde gegevens.
Parameters
- commandText
- String
De opdracht die moet worden uitgevoerd, in de systeemeigen taal van de gegevensbron.
- parameters
- Object[]
Een matrix met parameters die moeten worden doorgegeven aan de opdracht.
Retouren
Een opsomming van objecten van het type TElement.
Opmerkingen
De ExecuteStoreQuery methode maakt gebruik van de bestaande verbinding om een willekeurige opdracht rechtstreeks op de gegevensbron uit te voeren. De store-opdracht wordt uitgevoerd in de context van de huidige transactie, als er een dergelijke transactie bestaat.
Het aanroepen van de ExecuteStoreQuery methode is gelijk aan het aanroepen van de ExecuteReader methode van de DbCommand klasse, retourneert alleen ExecuteStoreQuery entiteiten en de ExecuteReader geretourneerde eigenschapswaarden in de DbDataReader.
Roep de ExecuteStoreQuery naam van de opgegeven entiteitsset aan als u wilt dat de resultaten worden bijgehouden.
Roep de Translate methode aan om een DbDataReader om te zetten in entiteitsobjecten wanneer de lezer gegevensrijen bevat die zijn toegewezen aan het opgegeven entiteitstype.
Met behulp van geparameteriseerde opdrachten kunt u bescherming bieden tegen SQL-injectieaanvallen, waarbij een aanvaller een opdracht in een SQL-instructie injecteert die de beveiliging op de server in gevaar brengt. Geparameteriseerde opdrachten beschermen tegen een SQL-injectieaanval door ervoor te zorgen dat waarden die zijn ontvangen van een externe bron alleen worden doorgegeven als waarden en niet als onderdeel van de SQL-instructie. Als gevolg hiervan worden SQL-opdrachten die in een waarde zijn ingevoegd, niet uitgevoerd in de gegevensbron. In plaats daarvan worden ze alleen geëvalueerd als een parameterwaarde. Naast de beveiligingsvoordelen bieden geparameteriseerde opdrachten een handige methode voor het ordenen van waarden die zijn doorgegeven met een SQL-instructie of aan een opgeslagen procedure.
De parameters waarde kan een matrix van DbParameter objecten of een matrix met parameterwaarden zijn. Als er alleen waarden worden opgegeven, wordt er een matrix met DbParameter objecten gemaakt op basis van de volgorde van de waarden in de matrix.
Voor meer informatie, zie:
Rechtstreeks store-opdrachten uitvoeren en
Procedure: Opdrachten rechtstreeks uitvoeren op basis van de gegevensbron
Van toepassing op
ExecuteStoreQuery<TEntity>(String, String, MergeOption, Object[])
Voert een query rechtstreeks uit op de gegevensbron en retourneert een reeks getypte resultaten. Geef de entiteitsset en de samenvoegoptie op, zodat queryresultaten kunnen worden bijgehouden als entiteiten.
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)
Type parameters
- TEntity
Het entiteitstype van de geretourneerde gegevens.
Parameters
- commandText
- String
De opdracht die moet worden uitgevoerd, in de systeemeigen taal van de gegevensbron.
- entitySetName
- String
De entiteitsset van het TEntity type. Als er geen naam voor een entiteitsset wordt opgegeven, worden de resultaten niet bijgehouden.
- mergeOption
- MergeOption
De MergeOption te gebruiken bij het uitvoeren van de query. De standaardwaarde is AppendOnly.
- parameters
- Object[]
Een matrix met parameters die moeten worden doorgegeven aan de opdracht.
Retouren
Een opsomming van objecten van het type TResult.
Opmerkingen
De ExecuteStoreQuery methode maakt gebruik van de bestaande verbinding om een willekeurige opdracht rechtstreeks op de gegevensbron uit te voeren. De store-opdracht wordt uitgevoerd in de context van de huidige transactie, als er een dergelijke transactie bestaat.
Het aanroepen van de ExecuteStoreQuery methode is gelijk aan het aanroepen van de ExecuteReader methode van de DbCommand klasse, retourneert alleen ExecuteStoreQuery entiteiten en de ExecuteReader geretourneerde eigenschapswaarden in de DbDataReader.
Geef de naam van de entiteitsset op als u wilt dat de resultaten als entiteiten worden bijgehouden.
Aanroepmethode Translate om een DbDataReader om te zetten in entiteitsobjecten wanneer de lezer gegevensrijen bevat die zijn toegewezen aan het opgegeven entiteitstype.
Met behulp van geparameteriseerde opdrachten kunt u bescherming bieden tegen SQL-injectieaanvallen, waarbij een aanvaller een opdracht in een SQL-instructie injecteert die de beveiliging op de server in gevaar brengt. Geparameteriseerde opdrachten beschermen tegen een SQL-injectieaanval door ervoor te zorgen dat waarden die zijn ontvangen van een externe bron alleen worden doorgegeven als waarden en niet als onderdeel van de SQL-instructie. Als gevolg hiervan worden SQL-opdrachten die in een waarde zijn ingevoegd, niet uitgevoerd in de gegevensbron. In plaats daarvan worden ze alleen geëvalueerd als een parameterwaarde. Naast de beveiligingsvoordelen bieden geparameteriseerde opdrachten een handige methode voor het ordenen van waarden die zijn doorgegeven met een SQL-instructie of aan een opgeslagen procedure.
De parameters waarde kan een matrix van DbParameter objecten of een matrix met parameterwaarden zijn. Als er alleen waarden worden opgegeven, wordt er een matrix met DbParameter objecten gemaakt op basis van de volgorde van de waarden in de matrix.
Voor meer informatie, zie:
Rechtstreeks store-opdrachten uitvoeren en
Procedure: Opdrachten rechtstreeks uitvoeren op basis van de gegevensbron