Wykorzystanie CSOM do kopiowania pliku do Office 365
Tak się ostatnio złożyło, że byłem zmuszony do przeprowadzania integracji pomiędzy SharePoint online (Office 365), a lokalnym systemem jednego z moich klientów. Z pewnością jest trochę inaczej gdy integrujemy się w ramach własnej instalacji, a trochę inaczej gdy musimy się podłączyć do Office 365, gdzie nie mamy wpływu na to jak on jest skonfigurowany, a jedynie możemy korzystać z tego co daje nam Microsoft. W tej chwili najlepszym wyborem wydaje się być skorzystanie jednej z dwóch technologi, które daje nam Microsoft:
– REST – Representational State Transfer
– CSOM – Client side Object Model
Sporo przykładów do wykorzystania znajdziecie na stronach MSDN. Ja w tym przypadku skupię się tylko na operacji kopiowania plików na/z serwer Office 365 (SharePoint online). Poniżej przykładowy kod, który służy do pobierania pliku z SharePoint online.
Kilka słów na temat powyższego kodu. Zanim wykonamy jakąś operację, musimy się uwierzytelnić. W tym celu korzystamy z klasy SharePointOnlineCredentials, która daje nam dostęp do zasobów SharePoint w chmurze. Po uwierzytelnieniu możemy skorzystać z kilku metod, które daje nam WebClient. W tym przypadku w mojej metodzie użyłem DownloadFile, ale ma ona swój odpowiednik UploadFile, który służy do przesłania pliku na serwer. Jak widzicie kod jest bardzo prosty i stosunkowo intuicyjny, a wykorzystanie SCOM powoduje, że może on nawet działać w bardzo prostej aplikacji konsolowej.