2010-02-17 60 views
0

我有一個ASPXGridView與DetailRow在這一行有三個額外的ASPxGridViews。每個細節ASPxGridView包含EmptyDataRow與鏈接模板來創建一個新的行:ASPxGridView POST超時

<a href="javascript:gridViewDetails1.AddNewRow();">AddNewRecord</a> 

當主ASPxGridView行是詳細網格1點或2,那麼新的行添加細,但如果在主ASPxGridView行約10或更多,然後當我點擊詳細的網格鏈接添加新行加載面板appers無限時間和FireBug->淨顯示POST的狀態是超時和時間約1秒。

我該如何修復?

AGoodDisplayName

的細節行GridView的必然 什麼?

是的,當然,在master gridView的details行裏面還有3個gridView,每個gridView都有一個單獨的ObjectDataSource。

您是否在 時間擴大了行數?

沒有,我只有一個列在時間:

AllowOnlyOneMasterRowExpanded="true" 

,我們可以看到一些標誌了嗎?

沒錯:

<asp:ObjectDataSource ID="dsMaster" runat="server" TypeName="..." SelectMethod="..."> 
</asp:ObjectDataSource> 
<dxwgv:ASPxGridView ID="gridViewMaster" ClientInstanceName="gridViewMaster" runat="server" DataSourceID="dsMaster"> 
    <Templates> 
     <DetailRow> 
      <%--first of details gridView--%> 
      <asp:ObjectDataSource ID="dsDetail1" runat="server" TypeName="..." SelectMethod="..."> 
      </asp:ObjectDataSource> 
      <dxwgv:ASPxGridView ID="gridViewDetail1" ClientInstanceName="gridViewDetail1" runat="server" DataSourceID="dsDetail1"> 
       <Templates> 
        <EmptyDataRow> 
         <a href="javascript:gridViewDetail1.AddNewRow();">AddNewRecord</a> 
        </EmptyDataRow> 
       </Templates> 
      </dxwgv:ASPxGridView> 
      <%--next others detail gridViews--%> 
     </DetailRow> 
    </Templates> 
</dxwgv:ASPxGridView> 
+0

是什麼綁定的細節行gridviews?你是否一次擴大排名?我們可以看到一些漲價嗎? – AGoodDisplayName 2010-02-17 16:39:31

+0

已在原始文章中詳細說明。 – 2010-02-18 07:47:59

回答

0

我已經收到這樣的一些問題,並能有些什麼releive問題。我的問題和你的問題的區別在於我使用的是DevExpress XpoDataSource(它的DevExpress版本的ObjectDataSource)。

  1. 在設計時我設置了數據源以帶回0條記錄。這樣,通過將FilterExpression設置爲「ID = 0」之類的內容,在頁面加載時不會有數據被重新獲取(這對於3個網格和3個數據源來說可能是昂貴的)。這看起來是最明智的表現。

  2. 很明顯,您希望帶回多於0條記錄,因此您需要在Detail網格的「BeforePerformDataSelect」事件中設置篩選。

    protected void ASPxGridView1_BeforePerformDataSelect(object sender, EventArgs e) 
    { 
        dsDetail1.FilterExpression = "MasterRecordID = " + (sender as ASPxGridView).GetMasterRowKeyValue().ToString(); 
    } 
    

我不知道這是否會解決您的問題,但是這是我沒有和它的幫助。

+0

感謝您的回答,但不幸的是,ObjectDataSource控件僅在Select方法返回DataSet或DataTable對象時支持篩選數據,而我的ObjectDataSource返回List對象=( – 2010-02-18 16:17:45