ObjectQuery<T>.SelectValue<TResultType> 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将查询结果限制为仅包含投影中指定的属性。
public:
generic <typename TResultType>
System::Data::Objects::ObjectQuery<TResultType> ^ SelectValue(System::String ^ projection, ... cli::array <System::Data::Objects::ObjectParameter ^> ^ parameters);
public System.Data.Objects.ObjectQuery<TResultType> SelectValue<TResultType> (string projection, params System.Data.Objects.ObjectParameter[] parameters);
member this.SelectValue : string * System.Data.Objects.ObjectParameter[] -> System.Data.Objects.ObjectQuery<'ResultType>
Public Function SelectValue(Of TResultType) (projection As String, ParamArray parameters As ObjectParameter()) As ObjectQuery(Of TResultType)
类型参数
- TResultType
由 ObjectQuery<T> 方法返回的 SelectValue<TResultType>(String, ObjectParameter[]) 的类型。
参数
- projection
- String
投影列表。
- parameters
- ObjectParameter[]
在分析时应在作用域内的一组可选查询参数。
返回
ObjectQuery<TResultType>
一个类型与特定投影兼容的新 ObjectQuery<T>。 返回的 ObjectQuery<T> 等效于应用了 SELECT VALUE 的原始实例。
例外
projection
是一个空字符串。
示例
此示例创建一个新的 ObjectQuery<T> ,其中包含一个结果,这些结果是从现有查询的结果投影的值序列 ProductID
。
using (AdventureWorksEntities context =
new AdventureWorksEntities())
{
string queryString =
@"SELECT VALUE product FROM
AdventureWorksEntities.Products AS product";
ObjectQuery<Product> productQuery1 =
new ObjectQuery<Product>(queryString,
context, MergeOption.NoTracking);
ObjectQuery<Int32> productQuery2 =
productQuery1.SelectValue<Int32>("it.ProductID");
foreach (Int32 result in productQuery2)
{
Console.WriteLine("{0}", result);
}
}
注解
SelectValue 用于返回简单类型、实体类型或复杂类型的值。 Select 方法用于需要行类型(而不是值类型)的投影。 有关详细信息,请参阅对象查询。
方法 SelectValue 应用 参数 projection
指定的投影。
ObjectQuery<T> 方法返回的 SelectValue 必须具有与投影兼容的值类型,且必须具有与 SelectValue 的类型相同的类型。