> 类以提供功能,例如,添加和删除对象。
通过将 LINQ to Entities 或查询生成器方法可以进一步优化此查询。
Products 集合的对象上下文进行查询。
using (AdventureWorksEntities AWEntities =
new AdventureWorksEntities())
{
ObjectSet<Product> products = AWEntities.Products;
IQueryable<Product> productsQuery =
from product
in products
select product;
Console.WriteLine(
"Product Names:");
foreach (
var prod
in productsQuery)
{
Console.WriteLine(prod.Name);
}
}
在以下情况下,将执行对象查询:
-
For Each (Visual Basic) 语句枚举对象。
-
))枚举对象。
-
Execute 方法。
-
查询生成器方法(实体框架)。
null。
博客(可能为英文网页),它演示如何执行本地查询。
Execute 方法执行查询:
using (AdventureWorksEntities advWorksContext =
new AdventureWorksEntities())
{
ObjectSet<Product> query = advWorksContext.Products;
// Execute the query and get the ObjectQueryResult.
ObjectResult<Product> queryResult = query.Execute(MergeOption.AppendOnly);
// Iterate through the collection of Product items.foreach (Product result
in queryResult)
Console.WriteLine(
"{0}", result.Name);
}
DbDataRecord 对象,或可返回单个值集的基元 CLR 类型。
以下注意事项适用于查询投影:
-
ArgumentException 异常,如下面的示例中所示。
// Define a query projection that returns // a single scalar value rather than a collection.
ObjectQuery<Int32> scalarQuery =
new ObjectQuery<Int32>(
"100", advWorksContext);
// Calling an extension method that requires a collection// will result in an exception.bool hasValues = scalarQuery.Any();
null 值。
);
可以为 null 的类型(C# 编程指南)。
如何:查看存储命令(实体框架)。
如何:使用特定对象的键返回特定对象(实体框架)。
概念