2012-11-13 36 views
8

मेरे पास एक वेब एप्लिकेशन है जो RadAomboax नियंत्रक को RadComboBox नियंत्रणों को पॉप्युलेट करने के लिए उपयोग करता है क्योंकि उपयोगकर्ता मेरे पृष्ठों में से एक पर चयन करता है। यह सही समय पर सही ढंग से काम करता है हालांकि AJAX कॉल आग लगने के लगभग 10% लेकिन लक्ष्य RadComboBox में कोई मान लोड नहीं होता है। यदि ब्राउज़र बंद है और पृष्ठ फिर से पहुंचा है तो यह व्यवहार जारी रहता है लेकिन कुछ मिनटों के बाद और एक और ब्राउज़र रीफ्रेश करें, सबकुछ एक बार फिर ठीक काम करता है।RadAjaxManager AJAX अनुरोध विफल रहता है

<telerik:AjaxSetting AjaxControlID="rcmbMarket"> 
     <UpdatedControls> 
      <telerik:AjaxUpdatedControl ControlID="rcmbApplicationField" 
       LoadingPanelID="RadAjaxLoadingPanel1" /> 
      <telerik:AjaxUpdatedControl ControlID="ApplicationFieldSource" 
       LoadingPanelID="RadAjaxLoadingPanel1" /> 
     </UpdatedControls> 
    </telerik:AjaxSetting> 

यहाँ शुरुआत और traget कॉम्बो बक्से के लिए मार्कअप है:

<asp:TableRow HorizontalAlign="Center" ID="ProductRow3"> 
    <asp:TableCell Width="25%" HorizontalAlign="Left" ID="MarketLabelCell"> 
     <asp:Label ID="lblMarket" runat="server" Text="Market: "></asp:Label> 
     <asp:RequiredFieldValidator ID="vldMarket" runat="server" ControlToValidate="rcmbMarket" 
      ErrorMessage="*" ForeColor="Red" SetFocusOnError="true" ValidationGroup="grpMain"></asp:RequiredFieldValidator> 
    </asp:TableCell> 
    <asp:TableCell Width="25%" HorizontalAlign="Left" ID="MarketDDLCell"> 
     <telerik:RadComboBox ID="rcmbMarket" runat="server" AllowCustomText="false" DataSourceID="MarketSource" AutoPostBack="true" CausesValidation="false" 
      DataTextField="MarketDesc" DataValueField="pkMarketID" AppendDataBoundItems="true" OnSelectedIndexChanged="Market_Check"> 
      <Items> 
       <telerik:RadComboBoxItem Text="" Value="" /> 
      </Items> 
     </telerik:RadComboBox> 
     <asp:SqlDataSource ID="MarketSource" runat="server" ConnectionString="<%$ ConnectionStrings:QuoteProdConn %>" SelectCommand="SELECT pkMarketID, MarketDesc FROM Data.Market WHERE Active = 'True' ORDER BY MarketDesc ASC"></asp:SqlDataSource> 
    </asp:TableCell> 
    <asp:TableCell Width="25%" HorizontalAlign="Left" ID="ApplicationLabelCell"> 
     <asp:Label ID="lblApplicationField" runat="server" Text="Application Field:"></asp:Label> 
     <asp:RequiredFieldValidator ID="vldAppField" runat="server" ControlToValidate="rcmbApplicationField" 
      ErrorMessage="*" ForeColor="Red" SetFocusOnError="true" ValidationGroup="grpMain"></asp:RequiredFieldValidator> 
    </asp:TableCell> 
    <asp:TableCell Width="25%" HorizontalAlign="Left" ID="ApplicationTextCell"> 
     <telerik:RadComboBox ID="rcmbApplicationField" runat="server" AllowCustomText="false" DataSourceID="ApplicationFieldSource" ExpandDirection="Down" 
      AutoPostBack="true" DataTextField="AppDescription" DataValueField="pkAppFieldID" AppendDataBoundItems="true" CausesValidation="false" MaxHeight="300px"> 
      <Items> 
       <telerik:RadComboBoxItem Text="" Value="" /> 
      </Items>  
     </telerik:RadComboBox> 
     <asp:SqlDataSource ID="ApplicationFieldSource" runat="server" ConnectionString="<%$ ConnectionStrings:QuoteProdConn %>"></asp:SqlDataSource> 
    </asp:TableCell> 
</asp:TableRow> 

यहाँ है कोड के लिए पीछे

यहाँ AJAX अनुरोध भेजने RadComboBox के लिए अजाक्स सेटिंग नहीं है Market_Check उप को कॉल किया जाता है जब बाजार कॉम्बो बॉक्स का चयनित सूचकांक बदल जाता है:

Protected Sub Market_Check(ByVal sender As Object, ByVal e As System.EventArgs) 

    Dim tmpItem As New Telerik.Web.UI.RadComboBoxItem("", "") 
    ApplicationFieldSource.SelectCommand = "SELECT pkAppFieldID, AppDescription FROM Data.ApplicationField WHERE Active = 'True' AND fkMarketID = " & rcmbMarket.SelectedValue.ToString() & " ORDER BY AppDescription ASC " 
    ApplicationFieldSource.DataBind() 
    rcmbApplicationField.Items.Clear() 
    rcmbApplicationField.Items.Add(tmpItem) 
    rcmbApplicationField.DataBind() 

End Sub 

यह सब बहुत आसान है इसलिए मुझे यकीन नहीं है कि मेरा यह मुद्दा क्यों हो रहा है। किसी भी मदद के लिए आभारी होंगे।

+0

यदि आपको कोई जवाब नहीं मिलता है - टेलरिक आपको वापस पाने के बारे में बहुत अच्छा है –

+0

क्या आप RadCompression का उपयोग कर रहे हैं? यदि ऐसा है, तो मैंने पाया है कि यह कभी-कभी समान मुद्दों का कारण बन सकता है। http://www.telerik.com/help/aspnet-ajax/compression.html – msigman

+0

क्या आप अपने पर्यावरण जैसे आईआईएस और .NET संस्करण के बारे में विवरण शामिल कर सकते हैं। – DaveHogan

उत्तर

0

टेलरिक अजाक्स के साथ एप्लिकेशनफिल्ड्स स्रोत अपडेट करने का प्रयास करें।

वैसे भी इस दृष्टिकोण बहुत मुश्किल है, आज आप इतना क्लाइंट सर्वर प्रौद्योगिकियों अब तक बहुत RadAjaxManager/एमएस ASP.NET AJAX की तुलना में बेहतर, सरल वेब सेवा करने के लिए उदाहरण सरल jQuery कॉल के लिए है।

0

क्या आपने फायरबग (नेट टैब) या फिडलर के साथ अनुरोध और प्रतिक्रिया संपत्ति की जांच करने का प्रयास किया था? यह कुछ और अंतर्दृष्टि प्रदान कर सकता है अगर यह rcmbMarket आइटम्स के कुछ चयनित मानों के साथ हो रहा है (यानी डेटाबेस में कुछ खराब डेटा)। साथ ही, जांचें कि पृष्ठ पोस्ट करने के लिए बहुत भारी नहीं है या नहीं। RadAjaxManager AJAX अनुरोध में भी पूर्ण पृष्ठ पोस्ट करता है।

संबंधित मुद्दे