Je souhaite copier une feuille de calcul Google Docs existante dans une nouvelle feuille de calcul Google Docs. Je ne pense pas que le v2.0 .NET API peut le gérer nativement (ou si je ne trouve pas la classe/méthode), mais il semble que le v3.0 protocol peut mais je ne suis pas sûr comment implémenter cela dans le cadre actuel ou même si c'est possible avec l'actuelle .net api. par exemple. ~ DocumentsFeed.copy() (pseudo code).Copie d'une feuille de calcul Google Docs à l'aide de l'API Google .NET
Exportation vers un fichier temporaire Excel puis le téléchargement sous un nouveau nom n'est pas possible car certaines formules complexes sont endommagées lors du processus de conversion.
Je suis un peu d'un .NET noob donc toute information serait grandement appréciée par exemple. Comment ferais-je cela en .NET si je pouvais seulement utiliser le protocole v3 (ajax etc) et pas l'API .NET.
Merci
EDIT: (classe finale grâce à @langsamu pour son aide!)
using System;
using Google.GData.Documents;
using Google.GData.Client;
using Google.GData.Extensions;
public class GoogleDocument
{
private DocumentsService ds;
private String username;
private String password;
public GoogleDocument(String username, String password)
{
this.ds = new DocumentsService("doc service name");
this.username = username;
this.password = password;
this.ds.setUserCredentials(username, password);
this.ds.QueryClientLoginToken();
}
public void copyDocument(String oldFileName, String newFileName)
{
SpreadsheetQuery query = new Google.GData.Documents.SpreadsheetQuery();
query.Title = oldFileName;
query.TitleExact = true;
DocumentsFeed feed = this.ds.Query(query);
AtomEntry entry = feed.Entries[0];
entry.Title.Text = newFileName;
var feedUri = new Uri(DocumentsListQuery.documentsBaseUri);
this.ds.Insert(feedUri, entry);
}
}
Avec un peu de peaufinage, vous pouvez rendre le 'type de document' indépendant et pas seulement pour les feuilles de calcul, mais je n'ai pas besoin de cela, donc je ne peux pas justifier l'heure maintenant. – User123342234