ObjectQuery<T> Construtores
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Inicializa uma nova instância da classe ObjectQuery<T>.
Sobrecargas
ObjectQuery<T>(String, ObjectContext) |
Cria uma nova ObjectQuery<T> instância usando o comando Entity SQL especificado como a consulta inicial. |
ObjectQuery<T>(String, ObjectContext, MergeOption) |
Cria uma nova ObjectQuery<T> instância usando o comando Entity SQL especificado como a consulta inicial e a opção de mesclagem especificada. |
Comentários
Um ObjectQuery<T> pode ser inicializado de forma que represente um único resultado escalar e não uma coleção de resultados escalares. Alguns métodos de extensão exigem resultados de coleção como entrada. Nesse caso, um ArgumentException é gerado quando um desses métodos é chamado. Para obter mais informações, confira Consultas de objeto.
Quando seu aplicativo gera consultas Entity SQL em runtime, você deve estar ciente de quaisquer limitações de comprimento de comando da fonte de dados. O Entity SQL não impõe limitações no comprimento do texto do comando em consultas.
ObjectQuery<T>(String, ObjectContext)
Cria uma nova ObjectQuery<T> instância usando o comando Entity SQL especificado como a 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 Entity SQL.
- context
- ObjectContext
O ObjectContext no qual 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);
}
Comentários
Quando seu aplicativo gera consultas Entity SQL em runtime, você deve estar ciente de quaisquer limitações de comprimento de comando da fonte de dados. O Entity SQL não impõe limitações no comprimento do texto do comando em consultas.
Confira também
Aplica-se a
ObjectQuery<T>(String, ObjectContext, MergeOption)
Cria uma nova ObjectQuery<T> instância usando o comando Entity SQL especificado como a consulta inicial e a opção de mesclagem 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 Entity SQL.
- context
- ObjectContext
O ObjectContext no qual executar a consulta.
- mergeOption
- MergeOption
Especifica como as entidades recuperadas por meio dessa consulta devem ser mescladas a entidades retornadas de consultas anteriores com relação ao mesmo ObjectContext.
Exemplos
Neste exemplo, o ObjectQuery<T> é inicializado com a consulta especificada, ObjectContexte 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"]);
}
}
Comentários
Quando seu aplicativo gera consultas Entity SQL em runtime, você deve estar ciente de quaisquer limitações de comprimento de comando da fonte de dados. O Entity SQL não impõe limitações no comprimento do texto do comando em consultas.