我在使用ResumeAsync()方法時遇到了一些YouTube API問題。YouTube V3 API C# - ResumeAsync()操作已取消
這裏是我的代碼...
YouTubeService youtube = await AuthService.AuthenticateYouTubeAsync(auth);
ResumableUpload<Video, Video> vidUploadReq = null;
var video = new Video();
video.Snippet = new VideoSnippet();
video.Snippet.Title = videoToUpload.Title;
video.Snippet.Description = videoToUpload.Description;
video.Snippet.Tags = videoToUpload.Tags;
video.Snippet.CategoryId = videoToUpload.CategoryID;
video.Status = new VideoStatus();
video.Status.PrivacyStatus = videoToUpload.PrivacyStatus;
var filePath = videoToUpload.LocalFilePath;
// Get chunk size and make sure it's valid
int chunkSizeBytes = defaultChunkSizeKB * 1024;
using (var fileStream = new FileStream(filePath, FileMode.Open))
{
vidUploadReq = youtube.Videos.Insert(video, "snippet,status", fileStream, "video/*");
vidUploadReq.ProgressChanged += videoUploadRequest_ProgressChanged;
vidUploadReq.ResponseReceived += videoUploadRequest_ResponseReceived;
vidUploadReq.ChunkSize = chunkSizeBytes;
await vidUploadReq.UploadAsync(token);
}
哪裏重新開始適應這個?
我是否希望在重新啓動應用程序時序列化ResumableUpload對象?
好像我需要保留UploadUri下次,下次設置UploadUri和StreamLength屬性。但是,這兩個字段在API中都是PRIVATE。
除了使用反射設置這些私有屬性以外,還有更好的方法嗎?
檢查此SO問題[21321878](http://stackoverflow.com/questions/21321878/youtube-c-sharp-api-v3-how-do-you-resume-an-interrupted-upload)如果它可以幫助你:) – KENdi
是的,我在發佈之前看過這個帖子。但是,它不回答我的問題。我的問題幾乎是「除了使用反射設置這些私有屬性以外,還有更好的方法嗎?」...您的鏈接提供了反射有效的示例。這根本不是解決這個問題的好方法。它破壞了O-O編程信息隱藏原理的目的。你現在看到了嗎? – Ginko
鏈接'解決'問題,這是不是隱藏了這是一個問題的事實。 – Ginko