【问题标题】:Filtering data using EntityDataSource (dropdownlist)使用 EntityDataSource 过滤数据(下拉列表)
【发布时间】:2014-07-03 05:33:19
【问题描述】:

我有一个使用实体数据源的下拉列表,用户选择一个值表单下拉列表,并且网格视图根据订单状态 (Drowpdownlist) 更改。下面是网格视图数据源。它可以工作,但是当我转到第 4 页,然后从下拉列表中显示不同的值时,网格视图就会消失。请帮忙。

    <asp:EntityDataSource ID="GridViewEDS" runat="server" ConnectionString="name=ServiceEntities" DefaultContainerName="ServiceEntities"
         EnableFlattening="False" EntitySetName="Orders" Where="it.[OrderStatus] == @OrderStatus">
       <WhereParameters>
            <asp:ControlParameter Name="OrderStatus" ControlID="OrderStatusDropDownList" DbType="String" DefaultValue="Null"/>
       </WhereParameters>

【问题讨论】:

  • 当您从 DropDownList 中选择不同的值时,该结果集是否包含足够的数据来填满四页?你能把 GridView 的页面改回 1 看看数据吗?
  • 是的,是的,问题是当我在第 4 页时,例如,如果我更改了下拉列表,gridview 就会消失。当我转到第 1 页并更改下拉列表时,gridview 工作正常。只有当我在 gridview 页面 2、3、4 上时才会发生这种情况...谢谢您对此进行调查
  • 因此,每当您在 DropDownList 中进行新选择时,您可以让该过程将当前页面重置为第 1 页吗?消失是否意味着它不再可见或没有数据?
  • BubbleHearth 非常感谢您的帮助。我将 mygridView.PageIndex = 0 添加到下拉列表中,一切正常!!!!谢谢

标签: asp.net entitydatasource


【解决方案1】:

清除 cmets 中的一些内容后,解决此问题的方法是在 DropDownList 中进行新选择时将 GridView 上的当前页面设置回第一页。造成这种情况的原因之一是辅助结果集不包含足够的记录来填充超过一页,因此什么也不显示。

gridView.PageIndex = 0;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-20
    相关资源
    最近更新 更多