EntityDataSource.Select 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置用于定义要在查询结果中包含的属性的投影。
public:
property System::String ^ Select { System::String ^ get(); void set(System::String ^ value); };
public string Select { get; set; }
member this.Select : string with get, set
Public Property Select As String
属性值
用于创建 ORDER BY 子句的参数。
例外
示例
以下 XML 标记使用 Select 属性指定具有 Product 类型的六个属性的投影:
<asp:EntityDataSource ID="ProductDataSource" runat="server"
ConnectionString="name=AdventureWorksEntities"
DefaultContainerName="AdventureWorksEntities"
EntitySetName="Product" OrderBy="it.[ProductID]"
Select="it.[ProductID], it.[Name], it.[ListPrice],
it.[Size], it.[Style], it.[Weight]">
</asp:EntityDataSource>
前面的 XML 示例与 ObjectQuery<T> 以下名称 products相同:
ObjectQuery<Product> products = context.Product
.Select(it.[ProductID], it.[Name], it.[ListPrice],
it.[Size], it.[Style], it.[Weight])
.OrderBy("it.[ProductID]");
注解
控件 Select 的属性 EntityDataSource 包含表示实体 SQL 查询的 SELECT 语句的字符串。 这样,便可以从查询返回的对象投影一组指定的属性。
此字符串在未经修改 ObjectQuery<T> 的情况下传递给实体框架执行的字符串。 此查询是控件管控 EntityDataSource 的数据源。 提供给属性的 Select 字符串使用与传递给 Select 方法的 ObjectQuery<T>字符串相同的格式。 有关如何使用 SELECT 子句为查询定义投影的示例,请参阅 “如何:执行返回匿名类型对象的查询”。
投影数据不支持更新。 这意味着,使用 Select 属性指定投影时,绑定的数据绑定不支持更新。
定义启用了分页的投影时,必须定义按该属性对结果进行排序。 这意味着将属性设置为Select定义投影并设置为AutoPage该属性时,还必须将属性设置为OrderBytrue定义顺序或将属性true设置为AutoGenerateOrderByClause,并将 ORDER BY 参数添加到OrderByParameters集合中。
Select 如果 EnableUpdate启用或 EnableDelete启用, EnableInsert 则无法设置。
Select如果设置为返回属性投影的查询(例如,SELECT p.ProductID, p. Name FROM AdventureWorksEntities.Products AS p),将返回一个DbDataRecord。