title: Iterating over an ArrayList Always misses 1 entry
body: <p>When iterating over an ArrayList of strings to display on my WebForm using Razor one entry is never actually displayed.</p>
  
  <p>The code:</p>
  
  <pre><code>&lt;asp:UpdatePanel ID="TweetUpdatePanel" runat="server"&gt;
      &lt;ContentTemplate&gt;
          &lt;%           
              ArrayList alList = GetLatest();
          %&gt;
          &lt;ul&gt;
              &lt;%
                foreach (string tweet in alList)
                {
              %&gt;
              &lt;li&gt;
                  &lt;asp:Literal ID="thisLiteral" runat="server"&gt;&lt;/asp:Literal&gt;
                  &lt;% thisLiteral.Text = tweet; %&gt;
              &lt;/li&gt;    
              &lt;%    
                } 
               %&gt;
          &lt;/ul&gt;
      &lt;/ContentTemplate&gt;
      &lt;Triggers&gt;
          &lt;asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" /&gt;
      &lt;/Triggers&gt;
  &lt;/asp:UpdatePanel&gt;
  &lt;asp:Timer ID="Timer1" runat="server" OnTick="Timer1_Tick"&gt;
  &lt;/asp:Timer&gt;
  </code></pre>
  
  <p>There is nothing in the timer event it is just used to refresh the updatepanel
  So if alList contains 4 items this is displayed.
   - tweet 1
   - tweet 2
   - tweet 3</p>
  
  <p>where tweet 1 - 3 are actual tweets.
  Can anyone see the problem in the code?</p>