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 物件的集合。