0

以下实体数据源将在 queryextender 中的每个 CustomExpression 中过滤后执行 orderby,或者它将先执行 orderby,然后在选择之前进入每个查询扩展器。

<asp:EntityDataSource ID="edsMembers" runat="server" 
    ConnectionString="name=MOSContainer" DefaultContainerName="MOSContainer" 
    EnableFlattening="False" EntitySetName="Members" EntityTypeFilter="Member"
    OrderBy="it.UserName" EnableDelete="True" ondeleted="edsMembers_Deleted">
</asp:EntityDataSource>
<asp:QueryExtender ID="qedMembers" runat="server" TargetControlID="edsMembers">
<asp:CustomExpression OnQuerying="FilterMembersActivatedEmail"></asp:CustomExpression>
<asp:CustomExpression OnQuerying="FilterMembersOccupationType"></asp:CustomExpression>
</asp:QueryExtender>
4

1 回答 1

1

QueryData 源 order by 子句应用于 PageInit,因此位于从实际数据源应用的那个之前。这里还有一个问题——由于查询扩展器和数据源创建了两个单独的 order by 子句,只有其中一个被尊重,这是最后一个应用的子句(来自数据源的那个)。Linq to SQL 数据源也是如此。这是我的类似问题的链接。

于 2011-10-14T08:06:27.850 回答