SkyDrive + C# + Windows Desktop

For my 4th year design project, I was tasked with building a way to communicate with SkyDrive from a Windows desktop application that is running C# on the .NET 4.0 framework. I thought this would be a fairly straightforward affair since Microsoft is responsible for both SkyDrive and C#, so surely there must be a fantastic or at least usable C# library that I can use. Unfortunately there isn’t.

After digging through the Live Connect API documentation, I came to the depressing conclusion that the only way I could communicate with SkyDrive, and any other Windows Live service was by using the WebClient class and using REST to make requests to SkyDrive. Then, I would have to grab the JSON response, parse it back into an object graph that I could use in C# and work from there. What is more unfortunate is that the documentation provides some very nice examples using the LiveConnect client and C# for Windows 8 Metro apps and Windows Phone apps. There are even nice examples using the LiveConnect client for Objective-C (iOS) apps and Android apps!

Searching Codeplex also does not bring up anything promising. There is one library that someone has been working on, but it is in Beta and has been not updated since August 2011. So, for all those developers scouring the internet and are looking for some way to easily integrate their desktop applications with SkyDrive, your best bet will be to write your own boilerplate to create REST urls to access the data and JSON parsers to interpret the data sent back.

2 thoughts on “SkyDrive + C# + Windows Desktop

  1. teusje

    Exactly the same problem.
    They give you nice clean examples and when you try to implement it you figure out it is Windows 8 (.net 4.5) only and for the metro apps.


Leave a Reply

Your email address will not be published. Required fields are marked *