Comment télécharger / mettre à jour un fichier par FileStream et ResumableUploader en C #

Je souhaite télécharger / mettre à jour un fichier par System.IO.FileStream dans l’API de liste de documents Google (C #)?

J’utilise deux façons ci-dessous: Google.GData.Client.ResumableUpload.ResumableUploader
(1) public void UpdateAsync (authentification par authentificateur, charge d’abonnement AbstractEntry, object userData)
(2) public void UpdateAsync (authentification par authentificateur, Uri resumableUploadUri, charge utile du stream, chaîne contentType, object userData)

(1) succès.
(2) Échec avec 403 Interdit ou un autre …

Alors, quelqu’un a-t-il un exemple de code sur (2)?

Mon code pour (2): Ce code est édité à l’aide d’un exemple de code de Claudio Cherubino , qui permet de télécharger le stream de fichiers vers Google Documents (Drive). Mais le nom du fichier (DocumentEntry) indique “Sans titre” à la page de Google Drive. Il semble que “slug” ne fonctionne pas. Me manque-t-il des parameters importants?

Google.GData.Documents.DocumentsService conn = new Google.GData.Documents.DocumentsService("TestSend"); conn.setUserCredentials("UserName", "UserPass"); ssortingng path = @"D:\test_file\test.exe"; Google.GData.Client.ResumableUpload.ResumableUploader send = new Google.GData.Client.ResumableUpload.ResumableUploader(); send.AsyncOperationCompleted += new Google.GData.Client.AsyncOperationCompletedEventHandler( delegate(object sender, Google.GData.Client.AsyncOperationCompletedEventArgs e) { System.Windows.Forms.MessageBox.Show("File Send Done"); } ); System.IO.FileStream fs = new System.IO.FileStream(path, System.IO.FileMode.Open, System.IO.FileAccess.ReadWrite); send.InsertAsync( new Google.GData.Client.ClientLoginAuthenticator("TestSend", "writely", this._DiskConn.Credentials), new System.Uri("https://docs.google.com/feeds/upload/create-session/default/private/full?v=3"), fs, "application/octet-stream", System.IO.Path.GetFileName(path), new object() ); 

Essayez le code suivant:

 DocumentsService service = new DocumentsService("MyDocumentsListIntegration-v1"); ClientLoginAuthenticator authenticator = new ClientLoginAuthenticator(APPLICATION_NAME, ServiceNames.Documents, USERNAME, PASSWORD); ssortingng slug = "Legal contract"; MediaFileSource mediaSource = new MediaFileSource("c:\\contract.txt", "text/plain"); Uri createUploadUrl = new Uri("https://docs.google.com/feeds/upload/create-session/default/private/full?v=3"); ResumableUploader ru = new ResumableUploader(); ru.InsertAsync(authenticator, createUploadUrl, mediaSource.GetDataStream(), mediaSource.ContentType, slug, new object());