לא עשיתי משהו כזה... אבל כידוע, גוגל מאוד משקיעים ב API שלהם (במוצרים שעוזרים להגדיל רווחים ע"י ה g suit, כמובן...).
ממה שיצא לי להתעסק, זכור לי שצריך לעשות שלושה דברים:
א. צריך להתקין את הספרייה של גוגל שמאפשרת גישה ליומן:
https://www.nuget.org/packages/Google.Apis.Calendar.v3/
[* למי שלא מכיר, הנאגט זה כלי מאוד נח לנהל את הספריות שמוסיפים ל visual studio, משום מה מיקרוסופט הקדימו את זמנם עוד לפני שמישהו העלה בדעתו לחשוב על npm, אלא שבזמנו כמעט ולא היו ספריות מעניינות זמינות שם... אבל היום כל דבר שזז נמצא שם
בשביל להוסיף ספרייה דרך ה Nuget, כפתור ימני על dependencies -> Manage Nuget Packages ושם ללכת לטאב Browse ולחפש את החבילה הרצויה (במקרה שלנו, google calendar). ראוי לציין שניתן להתקין חבילות גם כן דרך ה Package Manager Console, בדומה ממש ל npm (ניתן לפתוח אותה דרך View->Other windows->Package manager console)]
ב. צריך ליצור Project בגוגל:
https://developers.google.com/calendar/quickstart/dotnet
אם אני מנחש נכון, אליו ישוייכו כל החשבונות שמתירים להשתמש לגשת ל calendar שלהם (אשמח לדעת שאני צודק\טועה) שבסופו גוגל יוצר קובץ json במיוחד בשביל הפרויקט המסוים. הקובץ הזה ישמש לזיהוי בשרתים של גוגל.
ג. לא נותר אלא להשתמש ב Service של גוגל בשביל לשלוף מידע (דוגמה של קוד מצורפת בלינק שצירפתי קודם לכן)
לגבי Outlook, אין לי מושג...
*
הערה שלא קשורה לגופו של עניין: כתבת שיש מערכת c# ו sql.... אני בכלל לא בטוח שאני הייתי רוצה לשלוף את המידע מגוגל ואז לשמור אותו ב db שלי... שהרי, ניהול מידע פעמיים הוא סגולה לבעיות (כמו שנכתב פה בפורום כבר מס' פעמים), כגון שהתווספה\שונתה\נמחקה פגישה.... בכל אופן לפני שמאשרים איזושהי פעולה צריך לבדוק את הדברים מול גוגל... ממילא שום אין עניין לשמור את המידע פעמיים. דבר נוסף שמרוויחים מזה במקרה הספציפי שאין שום צורך בשרת... שהרי, כל המידע נמצא בגוגל, גם פגישה חדשה שמוסיפים, צריכה להתווסף אוטומטית לגוגל והחיים טובים....
נשמח להתעדכן בתהליך, בהצלחה