[ServiceContract(Namespace = "
http://paragamer/Service")]
public interface IForumService
{
[OperationContract]
[WebGet(UriTemplate = "Get?tid={tid}", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest)]
Page<Topic> Get(long tid);
[OperationContract]
[WebGet(UriTemplate = "Select/{query}?ps={psize}&pn={pnum}", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest)]
Page<Headline[]> Select(string query, int psize, int pnum);
[OperationContract]
[WebInvoke(Method = "POST", UriTemplate = "Post", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest)]
Entry Post(string title, string content);
[OperationContract]
[WebInvoke(Method = "POST", UriTemplate = "Reply", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest)]
Entry Reply(long tid, short num, string content);
[OperationContract]
[WebInvoke(Method = "POST", UriTemplate = "Rate", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest)]
Entry Rate(long tid, short num, short rating);
}