Как определить адрес URI для метода GET в REST - PullRequest
0 голосов
/ 31 мая 2018

У меня был этот код, и все работало хорошо

 [OperationContract]
    [WebInvoke(Method = "GET",
         ResponseFormat = WebMessageFormat.Json,
         RequestFormat = WebMessageFormat.Json,
         BodyStyle = WebMessageBodyStyle.Bare,
         UriTemplate = "Product/{id}?fields={fieldsParam}")]
    ResponseData JSONData(string id, string fieldsParam);

Я изменил свой код в формат:

    [OperationContract]
    [WebInvoke(Method = "GET",
        ResponseFormat = WebMessageFormat.Json,
         RequestFormat = WebMessageFormat.Json,
         BodyStyle = WebMessageBodyStyle.Bare,
         UriTemplate = "Product/{id}?fields={fieldsParam}")]
    Message JSONData(RetrievePublishedDataInput input);

Где

 [MessageContract]
    public class RetrievePublishedDataInput
    {
        [MessageBodyMember]
        public string id { get; set; }
        [MessageBodyMember]
        public string fieldsParam { get; set; }
    }

Но естьошибка.Нет никакого способа использовать MessageContract с UriTemplate, но как я могу указать адрес службы с аргументами запроса?

...