ObjectQuery<T>.Select(String, ObjectParameter[]) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将查询结果限制为仅包含在指定投影中定义的属性。
public:
System::Data::Objects::ObjectQuery<System::Data::Common::DbDataRecord ^> ^ Select(System::String ^ projection, ... cli::array <System::Data::Objects::ObjectParameter ^> ^ parameters);
public System.Data.Objects.ObjectQuery<System.Data.Common.DbDataRecord> Select (string projection, params System.Data.Objects.ObjectParameter[] parameters);
member this.Select : string * System.Data.Objects.ObjectParameter[] -> System.Data.Objects.ObjectQuery<System.Data.Common.DbDataRecord>
Public Function Select (projection As String, ParamArray parameters As ObjectParameter()) As ObjectQuery(Of DbDataRecord)
参数
- projection
- String
用于定义投影的所选属性的列表。
- parameters
- ObjectParameter[]
此方法中使用的零个或多个参数。
返回
一个 ObjectQuery<T> 类型的新 DbDataRecord 实例,等效于应用了 SELECT 的原始实例。
例外
projection
是一个空字符串。
示例
此示例创建一个新的 ObjectQuery<T> ,其结果为包含 ProductID
此查询结果字段的数据记录。
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"]);
}
}
注解
Select 应用 参数 projection
指定的投影。
ObjectQuery<T> 方法返回的 Select 始终为行类型 DbDataRecord。 使用 SelectValue 方法可返回简单类型、实体类型或复杂类型的值。 有关详细信息,请参阅 LINQ to Entities。
当投影中包括导航属性时,查询结果包括嵌套的 DbDataRecord 对象的集合。