Hi All,

The code below is a slight expansion of the C# example to access
Google Calendar.

I am accessing a public calendar (Anyone can read):
[email protected]

If I query from 2 Oct 2009 through to 3 Nov 2009 all events come back,
using the code below.

If I query  2 Oct 2009 through to 4 Nov 2009, the 13 Oct Event
disappears when using the same code below.

There is one event on 3 Nov.

Problem 1 (Primary error):

Event ID for 13 Oct is identical for Event ID on 3 Nov.  I did not
create the events, they were done manually by someone else.

Problem 2:

Event on 3 Nov is not returned even though query is from 2 Oct 2009 to
3 Nov 2009.  I would have thought the query dates are inclusive.
Event on 3 Nov only appears when query date range ends on or after 4
Nov.  I guess this is because I do not specify an end time for the
query (and only use a date) and 0:00:00 is taken as the end time?

If you use the Google C# example calendar code all dates are
returned.  This error is only appearing when you use the code below.

Regards

Peter

           while (calFeed != null && calFeed.Entries.Count > 0)
            {
                foreach (EventEntry entry in calFeed.Entries)
                {
                    //this.entryList.Add(entry);
                    if (entry.OriginalEvent != null)
                    {
                        System.Diagnostics.Debug.WriteLine
(entry.OriginalEvent.IdOriginal.ToString());
                        sArrEvents[iTotEvents, mciEventOriginalID] =
entry.OriginalEvent.IdOriginal.ToString();
                    }
                        else
                    {
                        System.Diagnostics.Debug.WriteLine("No
Original Event");
                    }

                    try
                    {
                        sArrEvents[iTotEvents, mciEventIdentifyer] =
entry.EventId;
                        sArrEvents[iTotEvents, mciEventTitle] =
entry.Title.Text;
                        if (entry.Content.Content != null) sArrEvents
[iTotEvents, mciEventDescription] = entry.Content.Content;
                        sArrEvents[iTotEvents, mciEventLocation] =
entry.Locations[0].ValueString;
                        sArrEvents[iTotEvents, mciEventAuthor] =
entry.Authors[0].Name;
                        sArrEvents[iTotEvents, mciEventAuthorEmail] =
entry.Authors[0].Email;
                        if (entry.EventVisibility != null) sArrEvents
[iTotEvents, mciEventVisible] = entry.EventVisibility.Value;
                        if (entry.Times.Count > 0)
                        {
                            sArrEvents[iTotEvents, mciEventStartDate]
= entry.Times[0].StartTime.Date.ToString();
                            sArrEvents[iTotEvents, mciEventStartTime]
= entry.Times[0].StartTime.TimeOfDay.ToString();
                            sArrEvents[iTotEvents, mciEventEndDate] =
entry.Times[0].EndTime.Date.ToString();
                            sArrEvents[iTotEvents, mciEventEndTime] =
entry.Times[0].EndTime.TimeOfDay.ToString();
                        }
                        sArrEvents[iTotEvents,
mciEventUpdatedDateTime] = entry.Updated.ToString();
                    }
                    catch (Exception ex)
                    {
                        sError = "To Get Event Entry Details: " +
query.Uri + " Error: " + ex.Message;
                        System.Diagnostics.Debug.WriteLine(ex);
                        return 0;
                    }

                    iTotEvents++;

                    if (iTotEvents == iMaxEvents)
                    {
                        if (calFeed.Entries.Count > iMaxEvents) sError
= "More Events available but Array too small.";
                        break;
                    }

                }
                if (iTotEvents == iMaxEvents)
                {
                    break;
                }

               // just query the same query again.
                if (calFeed.NextChunk != null)
                {
                    msStatusProperty = "Getting Next Chunk of Events
(" + iTotEvents + ")";
                    if (StatusEvent != null) StatusEvent();
                    if (msStatusProperty == "Abort")
                    {
                        if (AbortConnection != null) AbortConnection
();
                        break;
                    }
                    query.Uri = new Uri(calFeed.NextChunk);
                    calFeed = service.Query(query) as EventFeed;
                }
                else
                    calFeed = null;
            }

EVENT THAT DISAPPEARS BASED ON DATE RANGE SHOWN ABOVE:

r73ubaetgeusl3esv7tr54pgjs      13/10/2009 12:00
18:00:00        13/10/2009 12:00
20:00:00        Stromlo Criterium (Director Required)   "Stromlo
Week Night
Criterium -

AB 30, CD 25, EFGH 20.

Director Required
"  Stromlo Forest Park     ACTVCC Race Calendar
12/08/2008

EVENT HAS DUPLICATE EVENTID:

r73ubaetgeusl3esv7tr54pgjs      3/11/2009 12:00 18:00:00
3/11/2009 12:00
20:00:00        Stromlo Criterium (Director Required)   "Stromlo
Week Night
Criterium -

AB 30, CD 25, EFGH 20.

Director Required
"  Stromlo Forest Park     ACTVCC Race Calendar
12/08/2008

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google Calendar Data API" group.
To post to this group, send email to 
[email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/google-calendar-help-dataapi?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to