2012-05-10 2 views
0

this post에 나와있는 지침을 따르려고하고 있지만 제대로 작동하지 않습니다.수정 버전을 쿼리 할 때 잘못된 요청이 발생했습니다.

RevisionQuery의 생성자는 문자열을 사용하지만 entry.RevisionDocument는 Uri입니다. 방금 .ToString()을 사용했지만 오류가 발생했습니다 - 원격 서버에서 오류를 반환했습니다 : (400) 잘못된 요청 - 쿼리 (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

그것은 https://developers.google.com/google-apps/documents-list/#managing_revisions_of_documents_and_files에서 문서 같이 RevisionQuery 생성자에서 사용하고, 다음 코드와 같이 할 수

:

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

내가 뭘 잘못하고 있는지 알 겠어. Google.Data.Documents.DocumentEntry를 사용하는 대신 내 항목으로 Google.Documents.Document를 사용하고 있습니다. 이 객체에서 RequestDocument는 Uri이지만 DocumentEntry에서는 문자열이라는 것을 알 수 있습니다. 나는 그것이 내가 잃어버린 작은 것이라는 것을 알았다. DocumentRequest 모델보다는 Service/Query 모델을 사용하고 무슨 일이 일어나는지 내 코드를 리팩터링 할 것입니다. 정말 고마워! –

관련 문제