コード例 #1
0
ファイル: PureWebrequest.cs プロジェクト: CopyCat73/Pure-Dev
        private void api_processpublications(object sender, UploadDataCompletedEventArgs e)
        {
            if (!e.Cancelled && e.Error == null)
            {
                string json = Encoding.UTF8.GetString(e.Result);
                mainForm.Debug("response", json);
                ResponseResearchOutputs.ResearchOutputResponse Result = JsonConvert.DeserializeObject <ResponseResearchOutputs.ResearchOutputResponse>(json);
                researchOutputQuery.size = Result.count;

                mainForm.ClearPublicationTab();
                foreach (ResponseResearchOutputs.Item item in Result.items)
                {
                    for (int i = 0; i < item.type.Length; i++)
                    {
                        if (item.type[i].locale == "en_GB")
                        {
                            mainForm.AddPureDownloadedPublication(item.title, item.uuid, item.type[i].uri);
                            mainForm.AddPureDownloadedPublicationFilter(item.title, item.uuid, item.type[i].uri);
                            mainForm.AddPublicationType(item.type[i].value, item.type[i].uri);
                        }
                    }
                }

                mainForm.ResetPublicationsList();
                mainForm.ResetPublicationsFilter();
            }
            mainForm.ProgressBar(false);
        }
コード例 #2
0
ファイル: PureWebrequest.cs プロジェクト: CopyCat73/Pure-Dev
        private void api_processpublicationcount(object sender, UploadDataCompletedEventArgs e)
        {
            if (!e.Cancelled && e.Error == null)
            {
                string json = Encoding.Default.GetString(e.Result);
                mainForm.Debug("response", json);
                ResponseResearchOutputs.ResearchOutputResponse Result = JsonConvert.DeserializeObject <ResponseResearchOutputs.ResearchOutputResponse>(json);
                researchOutputQuery.size = Result.count;
                if (Result.count > 1000)
                {
                    DialogResult dialogResult = MessageBox.Show("The query has more than 1000 results, continue?", "Query warning", MessageBoxButtons.YesNo);
                    if (dialogResult == DialogResult.No)
                    {
                        mainForm.ProgressBar(false);
                        return;
                    }
                }
                //researchOutputQuery.fields = new string[] { "title","type" };

                postData = JsonConvert.SerializeObject(researchOutputQuery, Newtonsoft.Json.Formatting.None,
                                                       new JsonSerializerSettings
                {
                    NullValueHandling    = NullValueHandling.Ignore,
                    DefaultValueHandling = DefaultValueHandling.Ignore
                });
                String RequestURL = PublicationsRequestURL;
                DoWebRequest(RequestURL, "api_processpublications", "Post", postData, "json");
            }

            else
            {
                mainForm.ShowMessage(e.Error.ToString());
                mainForm.Debug("response", e.Error.ToString());
                mainForm.ProgressBar(false);
            }
        }