ObjectQuery<T> Construtores
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Inicializa uma nova instância da ObjectQuery<T> classe.
Sobrecargas
| Name | Description |
|---|---|
| ObjectQuery<T>(String, ObjectContext) |
Cria uma nova ObjectQuery<T> instância usando o comando SQL Entity especificado como consulta inicial. |
| ObjectQuery<T>(String, ObjectContext, MergeOption) |
Cria uma nova ObjectQuery<T> instância usando o comando SQL Entity especificado como consulta inicial e a opção de fusão especificada. |
Observações
An ObjectQuery<T> pode ser inicializado de forma a representar um único resultado escalar e não uma coleção de resultados escalares. Alguns métodos de extensão requerem resultados de recolha como entrada. Neste caso, um ArgumentException é lançado quando um destes métodos é chamado. Para obter mais informações, consulte Consultas de Objetos.
Quando a sua aplicação gera consultas Entity SQL em tempo de execução, deve estar atento a quaisquer limitações de comprimento de comando da fonte de dados. O Entity SQL não impõe limitações quanto ao comprimento do texto do comando nas consultas.
ObjectQuery<T>(String, ObjectContext)
Cria uma nova ObjectQuery<T> instância usando o comando SQL Entity especificado como consulta inicial.
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)
Parâmetros
- commandText
- String
A consulta SQL da Entidade.
- context
- ObjectContext
O ObjectContext que se deve executar a consulta.
Exemplos
Este exemplo mostra como construir uma instância da ObjectQuery<T> classe.
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);
}
Observações
Quando a sua aplicação gera consultas Entity SQL em tempo de execução, deve estar atento a quaisquer limitações de comprimento de comando da fonte de dados. O Entity SQL não impõe limitações quanto ao comprimento do texto do comando nas consultas.
Ver também
Aplica-se a
ObjectQuery<T>(String, ObjectContext, MergeOption)
Cria uma nova ObjectQuery<T> instância usando o comando SQL Entity especificado como consulta inicial e a opção de fusão especificada.
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)
Parâmetros
- commandText
- String
A consulta SQL da Entidade.
- context
- ObjectContext
O ObjectContext que se deve executar a consulta.
- mergeOption
- MergeOption
Especifica como as entidades recuperadas através desta consulta devem ser fundidas com as entidades que foram devolvidas de consultas anteriores contra a mesma ObjectContext.
Exemplos
Neste exemplo, o ObjectQuery<T> é inicializado com a consulta especificada, ObjectContext, e 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"]);
}
}
Observações
Quando a sua aplicação gera consultas Entity SQL em tempo de execução, deve estar atento a quaisquer limitações de comprimento de comando da fonte de dados. O Entity SQL não impõe limitações quanto ao comprimento do texto do comando nas consultas.