OneDrive C# SDK sucketh greatly!
The OneDrive C# SDK (and API) in general is appalling. One of the historical strengths of Microsoft APIs (going back to Win32) is the imperative and English-like style of the syntax which contrasts starkly with the sock-and-sandals mess of our Unix cousins. This gives MS API's an elegance which maps to user's mental models much closer than Unix-style .
As such, any C# API should HIDE all the REST and security from us more than it does. (Simple things should be simple and complex things should be possible!!) It should behave like System.IO.File and Directory with the only exception being a tiny bit of login stuff and some async methods to accommodate the fact you're going over the Web, but other than that, nothing else should be necessary for the basic cases.
e.g. WinForms pseudo-code to upload a file:
OneDriveClient odc = new OneDriveClient( strAppID);
OnlineFolder fld = odc.GetFolder( "MyTopLevelFolder");
That's it. Period. (Besides some async handling via await etc)
The constructor for OneDriveClient should use the credentials manager in Windows to get the OneDrive credentials for the currently logged in Windows user and prompt if necessary (i.e. first time only). Otherwise, bring up a modal dialog to ask the user to login via the web UI. All this should be done for you, otherwise I might as well use the stupid REST API directly.
So many other online apps work this way from an end-user perspective, (e.g. even Outlook stores your credentials for Hotmail)
If I'm missing something, forgive my ranting, haven't had my coffee today. :)
Actually, "sucketh" is an understatement.
Even when you check the project on github, a lot of issues remain open from over a year ago, with no comment whatsoever from the designers.
Please show more support and documentation for this sdk