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 に適用されるため、実際のデータ ソースから適用されるものより前になります。ここにも問題があります。クエリ エクステンダーとデータ ソースは 2 つの個別の order by 句を作成するため、そのうちの 1 つだけが考慮され、それが最後に適用されるもの (データ ソースからのもの) になります。同じことが Linq to SQL データ ソースでも機能します。これは私の同様の質問へのリンクです。

于 2011-10-14T08:06:27.850 に答える