2010-10-17 4 views
0

J'ai un problème pour effacer le cache dans asp.net. Voici mon code dans le chargement de la page. Ma chaîne de réponse est et chaîne de caractères xml. Si je rafraîchis ma page, la sortie xml n'est pas actualisée.Problème de mise en cache dans asp.net

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 

    Try 
    HttpResponse.RemoveOutputCacheItem("/spin.aspx") 

    Dim strCardNo As String = Request.QueryString("CardNo") 
    Dim strGame As String = Request.QueryString("GameName") 
    Dim strPoints As String = Request.QueryString("Points") 

    Dim strPointsPlayed As String = strPoints 
    Dim intWin As Integer 
    Dim winamount As Decimal = 0.0 
    Dim gamewin As Decimal = 0.0 

    objPhoneCard = CtblPhoneCard.GettblPhoneCardByID(strCardNo) 
    objCustAc = CtblCustomerAccount.GettblCustomerAccountByCustomerID(objPhoneCard.AccountId) 
    objCust = CtblCustomer.GettblCustomerByID(objCustAc.CustomerID) 
    objCustBal = CtblCustomerBalance.GettblCustomerBalanceByID(objCustAc.CustomerID) 

    Dim strOutPutXML As String = objSlotGame.GetSlotXML(strGame, Convert.ToInt32(strPoints), intWin) 

    gamewin = intWin/100 

    '************************************************************************ 
    Dim dsWin As DataSet = CWebAPI.GetTicketsPlayed(CInt(strPointsPlayed)) 

    If Not IsNothing(dsWin) Then 
     If dsWin.Tables.Count = 1 Then 
      If dsWin.Tables(0).Rows.Count > 0 Then 

       Dim drWin As DataRow 
       For Each drWin In dsWin.Tables(0).Rows 
        winamount = winamount + Convert.ToDecimal(drWin("Prize")) 
       Next 
      End If 
     End If 
    End If 

    CWebAPI.UpdateTicketStatus(CInt(strPointsPlayed)) 
    '************************************************************************ 

    objCustAc.Points = objCustAc.Points - CInt(strPointsPlayed) 
    If CtblCustomerAccount.Update(objCustAc) Then 
     objCustBal.PrizeAmount = objCustBal.PrizeAmount + gamewin 
     objCustBal.BalanceAmount = objCustBal.BalanceAmount + gamewin 
     If CtblCustomerBalance.Update(objCustBal) Then 
      'strTotalSweeps = Convert.ToString(objCustAc.Points - CInt(strPointsPlayed))     
     End If 
    End If 

    Response.Write(strOutPutXML) 

    Catch ex As Exception 
    Response.Write(ex.Message) 
    End Try 


End Sub 
+0

Pouvez-vous aussi publier le code HTML de votre page ASPX? Il pourrait y avoir une déclaration '<% @ OutputCache%>' là? À partir de votre code, il n'est pas évident de savoir pourquoi le XML est mis en cache. –

Répondre

0

Ceci est un problème avec la création de mon objet. J'ai trouvé la source du problème

0

Peut-être que ce n'est pas lié à ASP.NET mais un comportement du client en cache le résultat précédent? Que se passe-t-il si vous ajoutez des paramètres de chaîne de requête fictifs à votre demande Web?

Comme

http://.../....aspx?.....&dummy=1 
+0

Ceci est un problème avec la création de mon objet. J'ai trouvé la source du problème –