void wotdWorker_RunWorkerCompleted_ShowButton(object sender, RunWorkerCompletedEventArgs e) { wotds = (List <WordOfTheDay>)e.Result; checkWotDs(); prefs.LastFeedCheck = DateTime.Now; prefs.Save(); checkingWotDs = false; lblInfo.Text = ""; }
void getAccessTokenWorker_DoWork(object sender, DoWorkEventArgs e) { string strTranslatorAccessURI = "https://datamarket.accesscontrol.windows.net/v2/OAuth2-13"; String strRequestDetails = string.Format("grant_type=client_credentials&client_id={0}&client_secret={1}&scope=http://api.microsofttranslator.com", HttpUtility.UrlEncode(clientID), HttpUtility.UrlEncode(clientSecret)); WebRequest webRequest = WebRequest.Create(strTranslatorAccessURI); webRequest.ContentType = "application/x-www-form-urlencoded"; webRequest.Method = "POST"; byte[] bytes = Encoding.ASCII.GetBytes(strRequestDetails); webRequest.ContentLength = bytes.Length; using (Stream outputStream = webRequest.GetRequestStream()) { outputStream.Write(bytes, 0, bytes.Length); } WebResponse response = webRequest.GetResponse(); Stream stream = response.GetResponseStream(); StreamReader reader = new StreamReader(stream); string content = reader.ReadToEnd(); reader.Close(); response.Close(); headerValue = "Bearer " + getPropertyValue(content, "access_token"); tokenExpires = DateTime.Now.AddSeconds(double.Parse(getPropertyValue(content, "expires_in"))); //save token prefs.TranslationHeaderValue = headerValue; prefs.TranslationTokenExpires = tokenExpires; prefs.Save(); e.Result = e.Argument; }