3
3
using System ;
4
4
using System . Collections . Generic ;
5
5
using System . Web ;
6
- using Newtonsoft . Json ;
7
6
using StackExchange . NET . Interfaces ;
8
7
using StackExchange . NET . Models ;
9
8
@@ -14,48 +13,48 @@ namespace StackExchange.NET.Clients
14
13
public partial class StackExchangeClient : IAnswers
15
14
{
16
15
public IAnswers Answers => this ;
17
- Answers IAnswers . GetAllAnswers ( AnswerFilters filters )
16
+ BaseResponse < Answers > IAnswers . GetAllAnswers ( AnswerFilters filters )
18
17
{
19
18
if ( filters == null )
20
19
throw new ArgumentNullException ( $ "Null is not a valid parameter") ;
21
20
var apiParams = filters . GetQueryParams ( ) ;
22
21
var url = $ "{ _baseApiUrl } /answers?key={ _apiKey } &{ apiParams } ";
23
22
var response = _httpClient . GetAsync ( url ) . Result . Content . ReadAsStringAsync ( ) . Result ;
24
- var answers = JsonConvert . DeserializeObject < Answers > ( response ) ;
25
- return answers ;
23
+ var apiResult = response . DeserializeJson < Data < Answers > > ( ) . ValidateApiResponse ( ) ;
24
+ return apiResult ;
26
25
}
27
26
28
- Answers IAnswers . GetAnswerByIds ( List < string > ids , AnswerFilters filters )
27
+ BaseResponse < Answers > IAnswers . GetAnswerByIds ( List < string > ids , AnswerFilters filters )
29
28
{
30
29
var apiParams = filters . GetQueryParams ( ) ;
31
30
var url = $ "{ _baseApiUrl } /answers/";
32
31
var idsToEncode = string . Join ( ";" , ids . ToArray ( ) ) ;
33
32
url = url + $ "{ HttpUtility . UrlEncode ( idsToEncode ) } " + $ "?key={ _apiKey } &{ apiParams } ";
34
33
var response = _httpClient . GetAsync ( url ) . Result . Content . ReadAsStringAsync ( ) . Result ;
35
- var answers = JsonConvert . DeserializeObject < Answers > ( response ) ;
36
- return answers ;
34
+ var apiResult = response . DeserializeJson < Data < Answers > > ( ) . ValidateApiResponse ( ) ;
35
+ return apiResult ;
37
36
}
38
37
39
- Answers IAnswers . GetCommentsByIds ( List < string > ids , AnswerFilters filters )
38
+ BaseResponse < Answers > IAnswers . GetCommentsByIds ( List < string > ids , AnswerFilters filters )
40
39
{
41
40
var apiParams = filters . GetQueryParams ( ) ;
42
41
var url = $ "{ _baseApiUrl } /answers/";
43
42
var idsToEncode = string . Join ( ";" , ids . ToArray ( ) ) ;
44
43
url = url + $ "{ HttpUtility . UrlEncode ( idsToEncode ) } " + $ "/comments?key={ _apiKey } &{ apiParams } ";
45
44
var response = _httpClient . GetAsync ( url ) . Result . Content . ReadAsStringAsync ( ) . Result ;
46
- var answers = JsonConvert . DeserializeObject < Answers > ( response ) ;
47
- return answers ;
45
+ var apiResult = response . DeserializeJson < Data < Answers > > ( ) . ValidateApiResponse ( ) ;
46
+ return apiResult ;
48
47
}
49
48
50
- Questions IAnswers . GetQuestionByAnswerIds ( List < string > ids , AnswerFilters filters )
49
+ BaseResponse < Questions > IAnswers . GetQuestionByAnswerIds ( List < string > ids , AnswerFilters filters )
51
50
{
52
51
var apiParams = filters . GetQueryParams ( ) ;
53
52
var url = $ "{ _baseApiUrl } /answers/";
54
53
var idsToEncode = string . Join ( ";" , ids . ToArray ( ) ) ;
55
54
url = url + $ "{ HttpUtility . UrlEncode ( idsToEncode ) } " + $ "/questions?key={ _apiKey } &{ apiParams } ";
56
55
var response = _httpClient . GetAsync ( url ) . Result . Content . ReadAsStringAsync ( ) . Result ;
57
- var questions = JsonConvert . DeserializeObject < Questions > ( response ) ;
58
- return questions ;
56
+ var apiResult = response . DeserializeJson < Data < Questions > > ( ) . ValidateApiResponse ( ) ;
57
+ return apiResult ;
59
58
}
60
59
61
60
void IAnswers . AcceptAnAnswer ( string id , AnswerFilters filters )
0 commit comments