2012-05-10 2 views
0

Я стараюсь следовать инструкциям, изложенным в this post, но я не могу заставить его работать.Плохой запрос при запросе ревизий

Конструктор для RevisionQuery принимает строку, но entry.RevisionDocument - это Uri. Я просто использовал .ToString(), но теперь я получаю сообщение об ошибке. Удаленный сервер возвратил ошибку: (400) Bad Request - когда я пытаюсь выполнить запрос (RevisionFeed revisions = service.Query (revisionQuery)). Uri установлен в http://docs.google.com/feeds/default/private/full/document: {id}/изменения. Это правильный Uri для получения исправлений от документа? Когда я перехожу к URL-адресу в браузере, я получаю ту же ошибку.

Я считаю, что я настроил свою службу, используя правильные учетные данные, но я уверен, что я просто пропустил что-то маленькое. Любая помощь будет принята с благодарностью. У меня есть ряд документов, которые мне нужно опубликовать, и делать их вручную было бы очень больно.

Спасибо!

ответ

1

entry.RevisionDocument свойство фактически строка:

http://code.google.com/p/google-gdata/source/browse/trunk/clients/cs/src/documents3/documententry.cs#373

Он может быть использован в конструктор RevisionQuery, как показано в документации по https://developers.google.com/google-apps/documents-list/#managing_revisions_of_documents_and_files, и как показано в следующем фрагменте:

RevisionQuery revisionQuery = new RevisionQuery(entry.RevisionDocument); 
RevisionFeed revisions = service.Query(revisionQuery); 
+0

Я вижу, что я делаю неправильно. Вместо использования Google.Data.Documents.DocumentEntry я использую Google.Documents.Document в качестве моей записи. В этом объекте RequestDocument является Uri, но в DocumentEntry я вижу, что это строка. Я знал, что это было что-то маленькое, чего мне не хватало. Я реорганизую свой код, чтобы использовать модель Service/Query, а не модель DocumentRequest и посмотреть, что произойдет. Спасибо! –

Смежные вопросы