ObjectQuery<T> Constructors
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.
Initialiseert een nieuw exemplaar van de ObjectQuery<T> klasse.
Overloads
| Name | Description |
|---|---|
| ObjectQuery<T>(String, ObjectContext) |
Hiermee maakt u een nieuw ObjectQuery<T> exemplaar met behulp van de opgegeven Entiteit SQL-opdracht als de eerste query. |
| ObjectQuery<T>(String, ObjectContext, MergeOption) |
Hiermee maakt u een nieuw ObjectQuery<T> exemplaar met behulp van de opgegeven Entiteit SQL-opdracht als de eerste query en de opgegeven optie voor samenvoegen. |
Opmerkingen
Een ObjectQuery<T> kan zodanig worden geïnitialiseerd dat het één scalair resultaat vertegenwoordigt en niet een verzameling scalaire resultaten. Voor sommige uitbreidingsmethoden zijn verzamelingsresultaten vereist als invoer. In dit geval wordt er een ArgumentException gegenereerd wanneer een van deze methoden wordt aangeroepen. Zie Objectquery's voor meer informatie.
Wanneer uw toepassing entiteits-SQL-query's genereert tijdens runtime, moet u rekening houden met eventuele beperkingen van de opdrachtlengte van de gegevensbron. Entiteit SQL dwingt geen beperkingen af voor de lengte van de opdrachttekst in query's.
ObjectQuery<T>(String, ObjectContext)
Hiermee maakt u een nieuw ObjectQuery<T> exemplaar met behulp van de opgegeven Entiteit SQL-opdracht als de eerste query.
public:
ObjectQuery(System::String ^ commandText, System::Data::Objects::ObjectContext ^ context);
public ObjectQuery(string commandText, System.Data.Objects.ObjectContext context);
new System.Data.Objects.ObjectQuery<'T> : string * System.Data.Objects.ObjectContext -> System.Data.Objects.ObjectQuery<'T>
Public Sub New (commandText As String, context As ObjectContext)
Parameters
- commandText
- String
De Entiteit SQL-query.
- context
- ObjectContext
De ObjectContext query waarop de query moet worden uitgevoerd.
Voorbeelden
In dit voorbeeld ziet u hoe u een exemplaar van de ObjectQuery<T> klasse maakt.
using (AdventureWorksEntities context =
new AdventureWorksEntities())
{
// Call the constructor with a query for products and the ObjectContext.
ObjectQuery<Product> productQuery1 =
new ObjectQuery<Product>("Products", context);
foreach (Product result in productQuery1)
Console.WriteLine("Product Name: {0}", result.Name);
string queryString =
@"SELECT VALUE product FROM AdventureWorksEntities.Products AS product";
// Call the constructor with the specified query and the ObjectContext.
ObjectQuery<Product> productQuery2 =
new ObjectQuery<Product>(queryString, context);
foreach (Product result in productQuery2)
Console.WriteLine("Product Name: {0}", result.Name);
// Call the constructor with the specified query, the ObjectContext,
// and the NoTracking merge option.
ObjectQuery<Product> productQuery3 =
new ObjectQuery<Product>(queryString,
context, MergeOption.NoTracking);
foreach (Product result in productQuery3)
Console.WriteLine("Product Name: {0}", result.Name);
}
Opmerkingen
Wanneer uw toepassing entiteits-SQL-query's genereert tijdens runtime, moet u rekening houden met eventuele beperkingen van de opdrachtlengte van de gegevensbron. Entiteit SQL dwingt geen beperkingen af voor de lengte van de opdrachttekst in query's.
Zie ook
Van toepassing op
ObjectQuery<T>(String, ObjectContext, MergeOption)
Hiermee maakt u een nieuw ObjectQuery<T> exemplaar met behulp van de opgegeven Entiteit SQL-opdracht als de eerste query en de opgegeven optie voor samenvoegen.
public:
ObjectQuery(System::String ^ commandText, System::Data::Objects::ObjectContext ^ context, System::Data::Objects::MergeOption mergeOption);
public ObjectQuery(string commandText, System.Data.Objects.ObjectContext context, System.Data.Objects.MergeOption mergeOption);
new System.Data.Objects.ObjectQuery<'T> : string * System.Data.Objects.ObjectContext * System.Data.Objects.MergeOption -> System.Data.Objects.ObjectQuery<'T>
Public Sub New (commandText As String, context As ObjectContext, mergeOption As MergeOption)
Parameters
- commandText
- String
De Entiteit SQL-query.
- context
- ObjectContext
De ObjectContext query waarop de query moet worden uitgevoerd.
- mergeOption
- MergeOption
Hiermee geeft u op hoe de entiteiten die via deze query worden opgehaald, moeten worden samengevoegd met de entiteiten die zijn geretourneerd uit eerdere query's op dezelfde ObjectContext.
Voorbeelden
In dit voorbeeld wordt de ObjectQuery<T> initialisatie uitgevoerd met de opgegeven query, ObjectContexten MergeOption.
int productID = 900;
using (AdventureWorksEntities context =
new AdventureWorksEntities())
{
string queryString = @"SELECT VALUE product FROM
AdventureWorksEntities.Products AS product
WHERE product.ProductID > @productID";
ObjectQuery<Product> productQuery1 =
new ObjectQuery<Product>(queryString,
context, MergeOption.NoTracking);
productQuery1.Parameters.Add(new ObjectParameter("productID", productID));
ObjectQuery<DbDataRecord> productQuery2 =
productQuery1.Select("it.ProductID");
foreach (DbDataRecord result in productQuery2)
{
Console.WriteLine("{0}", result["ProductID"]);
}
}
Opmerkingen
Wanneer uw toepassing entiteits-SQL-query's genereert tijdens runtime, moet u rekening houden met eventuele beperkingen van de opdrachtlengte van de gegevensbron. Entiteit SQL dwingt geen beperkingen af voor de lengte van de opdrachttekst in query's.