|
3 | 3 |
|
4 | 4 | namespace StackExchange.NET.Interfaces
|
5 | 5 | {
|
6 | | - interface IQuestions |
| 6 | + /// <summary> |
| 7 | + /// The Questions interface which lists all possible operations. |
| 8 | + /// </summary> |
| 9 | + public interface IQuestions |
7 | 10 | {
|
| 11 | + /// <summary> |
| 12 | + /// <para>Gets all the questions on the site.</para> |
| 13 | + /// </summary> |
| 14 | + /// <param name="filters">The Question filters.</param> |
| 15 | + /// <returns></returns> |
8 | 16 | BaseResponse<Question> GetAllQuestions(QuestionFilters filters);
|
| 17 | + /// <summary> |
| 18 | + /// Returns the questions identified in {ids}. |
| 19 | + /// |
| 20 | + /// This is most useful for fetching fresh data when maintaining a cache of question ids, or polling for changes. |
| 21 | + /// </summary> |
| 22 | + /// <param name="ids"></param> |
| 23 | + /// <param name="filters"></param> |
| 24 | + /// <returns></returns> |
9 | 25 | BaseResponse<Question> GetQuestionsByIds(List<string> ids, QuestionFilters filters);
|
10 | | - BaseResponse<Question> GetAnswersByQuestionIds(List<string> ids, QuestionFilters filters); |
11 | | - BaseResponse<Question> GetCommentsByQuestionIds(List<string> ids, QuestionFilters filters); |
| 26 | + /// <summary> |
| 27 | + /// Gets the answers to a set of questions identified in id. |
| 28 | + /// |
| 29 | + /// This method is most useful if you have a set of interesting questions, and you wish to obtain all of their answers at once or if you are polling for new or updates answers (in conjunction with sort=activity). |
| 30 | + /// </summary> |
| 31 | + /// <param name="ids"></param> |
| 32 | + /// <param name="filters"></param> |
| 33 | + /// <returns></returns> |
| 34 | + BaseResponse<Answer> GetAnswersByQuestionIds(List<string> ids, QuestionFilters filters); |
| 35 | + /// <summary> |
| 36 | + /// Gets the comments on a question. |
| 37 | + /// |
| 38 | + /// If you know that you have an question id and need the comments, use this method. If you know you have a answer id, use GetAnswersWithIds. If you are unsure, use GetPostsWithIds. |
| 39 | + /// </summary> |
| 40 | + /// <param name="ids"></param> |
| 41 | + /// <param name="filters"></param> |
| 42 | + /// <returns></returns> |
| 43 | + BaseResponse<Comment> GetCommentsByQuestionIds(List<string> ids, QuestionFilters filters); |
| 44 | + /// <summary> |
| 45 | + /// Gets questions which link to those questions identified in {ids}. |
| 46 | + /// |
| 47 | + /// This method only considers questions that are linked within a site, and will never return questions from another Stack Exchange site. |
| 48 | + /// |
| 49 | + /// A question is considered "linked" when it explicitly includes a hyperlink to another question. There are no other heuristics. |
| 50 | + /// </summary> |
| 51 | + /// <param name="ids"></param> |
| 52 | + /// <param name="filters"></param> |
| 53 | + /// <returns></returns> |
12 | 54 | BaseResponse<Question> GetLinkedQuestions(List<string> ids, QuestionFilters filters);
|
| 55 | + /// <summary> |
| 56 | + /// Returns questions that the site considers related to those identified in {ids}. |
| 57 | + /// |
| 58 | + /// The algorithm for determining if questions are related is not documented, and subject to change at any time. Furthermore, these values are very heavily cached, and may not update immediately after a question has been editted. It is also not guaranteed that a question will be considered related to any number (even non-zero) of questions, and a consumer should be able to handle a variable number of returned questions. |
| 59 | + /// </summary> |
| 60 | + /// <param name="ids"></param> |
| 61 | + /// <param name="filters"></param> |
| 62 | + /// <returns></returns> |
13 | 63 | BaseResponse<Question> GetRelatedQuestions(List<string> ids, QuestionFilters filters);
|
| 64 | + /// <summary> |
| 65 | + /// Returns a subset of the events that have happened to the questions identified in id. |
| 66 | + /// |
| 67 | + /// This provides data similar to that found on a question's timeline page. |
| 68 | + /// |
| 69 | + /// Voting data is scrubbed to deter inferencing of voter identity. |
| 70 | + /// </summary> |
| 71 | + /// <param name="ids"></param> |
| 72 | + /// <param name="filters"></param> |
| 73 | + /// <returns></returns> |
14 | 74 | BaseResponse<Question> GetTimeLine(List<string> ids, QuestionFilters filters);
|
| 75 | + /// <summary> |
| 76 | + /// Returns all the questions with active bounties in the system. |
| 77 | + /// |
| 78 | + /// The sorts accepted by this method operate on the following fields of the question object: |
| 79 | + /// </summary> |
| 80 | + /// <param name="filters"></param> |
| 81 | + /// <returns></returns> |
15 | 82 | BaseResponse<Question> GetFeaturedQuestions(QuestionFilters filters);
|
16 | | - BaseResponse<Question> GetQuestionsWithNoAnswers(); |
17 | | - BaseResponse<Question> GetUnansweredQuestions(); |
| 83 | + /// <summary> |
| 84 | + /// Returns questions which have received no answers. |
| 85 | + /// |
| 86 | + /// Compare with /questions/unanswered which merely returns questions that the sites consider insufficiently well answered. |
| 87 | + /// </summary> |
| 88 | + /// <returns></returns> |
| 89 | + BaseResponse<Question> GetQuestionsWithNoAnswers(QuestionFilters filters); |
| 90 | + /// <summary> |
| 91 | + /// Returns questions the site considers to be unanswered. |
| 92 | + /// |
| 93 | + /// Note that just because a question has an answer, that does not mean it is considered answered. While the rules are subject to change, at this time a question must have at least one upvoted answer to be considered answered. |
| 94 | + /// </summary> |
| 95 | + /// <returns></returns> |
| 96 | + BaseResponse<Question> GetUnansweredQuestions(QuestionFilters filters); |
18 | 97 | }
|
19 | 98 | }
|
0 commit comments