예제 #1
0
 public SpeechPageViewModel()
 {
     ptype = "SearchSpeeches";
     start = "2";
     var content = "anas";
     if (ptype == "LatestSpeech")
     {
         Parameters param = new Parameters();
         param.ptype = "LatestSpeech";
         param.start = start;
         param.limit = "15";
         GetRemoteSpeeches(param).ConfigureAwait(false);
     }
     else if (ptype == "SearchSpeeches")
     {
         Parameters param = new Parameters();
         param.ptype = "SearchSpeeches";
         param.start = start;
         param.limit = "15";
         param.searchstring = content;
         GetRemoteSpeeches(param).ConfigureAwait(false);
     }
     else if (ptype == "SpeechbyCategory")
     {
         Parameters param = new Parameters();
         param.ptype = "SpeechbyCategory";
         param.start = start;
         param.limit = "15";
         param.searchstring = content;
         GetRemoteSpeeches(param).ConfigureAwait(false);
     }
 }
예제 #2
0
        public async Task<IEnumerable<Post>> GetSpeeches(Parameters param)
        {
            string passvalue=null;
            if (param.ptype == "LatestSpeech")
            {
                passvalue = "latestspeeches.php?start=" + param.start + "&limit=" + param.limit;
            }
            else if (param.ptype == "SearchSpeeches")
            {
                passvalue = "search.php?searchstring=" + param.searchstring + "&start=" + param.start + "&limit=" + param.limit;
            }
            else if(param.ptype == "SpeechbyCategory")
            {
                passvalue = "itemsbycategory.php?catid="+param.catid +"&start=" + param.start + "&limit=" + param.limit;
            }
          
         //   IEnumerable<RootObject> posts = Enumerable.Empty<RootObject>();
            IEnumerable<Post> posts = Enumerable.Empty<Post>();
            using (var httpClient = CreateClient())
            {
                var response = await httpClient.GetAsync(passvalue).ConfigureAwait(false);
                if (response.IsSuccessStatusCode)
                {
                    var json = await response.Content.ReadAsStringAsync().ConfigureAwait(false);
                    if (!string.IsNullOrWhiteSpace(json))
                    {
                       var tempe = await Task.Run(() =>
                           JsonConvert.DeserializeObject<RootObject>(json)
                        ).ConfigureAwait(false);
                        posts = tempe.rposts;
                    }
                }
            }

            return posts.ToList();
        }
예제 #3
0
 private async Task GetRemoteSpeeches(Parameters param)
 {
     var remoteClient = new SpeechServices();
     var posts = await remoteClient.GetSpeeches(param).ConfigureAwait(false);
     this.Speeches = posts.ToList();
 }