I am trying to add an array list to a cache object in my WebService. But it only loads the first 2 attempts and ignores any other attempts to load data into the cache.
Why?
Code:Imports System.Web.Services 'Imports System.Web.Caching.Cache <System.Web.Services.WebService(Namespace:="http://tempuri.org/wsTranscriptsTest/Service1")> _ Public Class HoldingTank Inherits System.Web.Services.WebService Dim strArray As New ArrayList #Region " Web Services Designer Generated Code " Public Sub New() MyBase.New() 'This call is required by the Web Services Designer. InitializeComponent() 'Add your own initialization code after the InitializeComponent() call End Sub 'Required by the Web Services Designer Private components As System.ComponentModel.IContainer 'NOTE: The following procedure is required by the Web Services Designer 'It can be modified using the Web Services Designer. 'Do not modify it using the code editor. <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent() components = New System.ComponentModel.Container End Sub Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) 'CODEGEN: This procedure is required by the Web Services Designer 'Do not modify it using the code editor. If disposing Then If Not (components Is Nothing) Then components.Dispose() End If End If MyBase.Dispose(disposing) End Sub #End Region <WebMethod()> _ Public Function HelloWorld() As ArrayList If Context.Cache("strArray") Is Nothing Then CreateCache() End If Dim arrReturnList As ArrayList = CType(Context.Cache("strArray"), ArrayList) Context.Cache.Remove("strArray") Return arrReturnList End Function <WebMethod()> _ Public Sub FillCache(ByVal strValue As String) If Context.Cache("strArray") Is Nothing Then CreateCache() End If strArray.Add(strValue) Context.Cache.Add("strArray", strArray, Nothing, Now.AddHours(1), Nothing, Caching.CacheItemPriority.High, Nothing) End Sub Private Sub CreateCache() strArray.Add("StarterValue") 'Context.Cache.Insert("strArray", strArray) Context.Cache.Add("strArray", strArray, Nothing, Now.AddHours(1), Nothing, Caching.CacheItemPriority.High, Nothing) End Sub End Class


Reply With Quote