title: How do I control the TimeZone of events returned by the .NET Google Calendar API?
body: <p>I have the following code for use in my asp.net website:</p>
  
  <pre><code>CalendarService service = new CalendarService("mycalendar");
  EventQuery query = new EventQuery();
  query.Uri = new Uri(group.GroupEventsURL);
  query.SingleEvents = true;
  query.SortOrder = CalendarSortOrder.ascending;
  query.ExtraParameters = "orderby=starttime";
  query.NumberToRetrieve = 50;
  query.TimeZone = "America/Chicago";
  EventFeed feed = service.Query(query);
  </code></pre>
  
  <p>Which produces the following URL:</p>
  
  <p><code>http://www.google.com/calendar/feeds/TRIMMEDgroup.calendar.google.com/private-TRIMMED/full?max-results=50&amp;orderby=starttime&amp;ctz=America%2FChicago&amp;sortorder=ascending&amp;singleevents=true</code></p>
  
  <p>According to the <a href="http://code.google.com/apis/calendar/data/2.0/reference.html#Parameters" rel="nofollow">documentation</a> (emphasis mine), I expect the Times in each EventEntry to be in the Central time zone: </p>
  
  <blockquote>
    <p>ctz: The current timezone. If not specified, times are returned in the calendar time zone.</p>
    
    <ul>
    <li><strong>Times in the resulting feed will be represented in this timezone</strong>.</li>
    <li>Replace all spaces with underscores (e.g. "ctz=America/Los_Angeles").</li>
    </ul>
  </blockquote>
  
  <p>But my server is hosted in Arizona, so (for now) all of the dates on the calendar are two hours earlier than they should be. Am I doing something wrong? How do I get the dates in the feed to be in the Central time zone even though the server is in Arizona?</p>
  
  <p>I do not plan on moving my hosting any time soon, but since Arizona does not participate in Daylight Savings Time, I cannot simply add two hours to every date.</p>