如何在REST中为GET方法定义uri地址

时间:2018-05-31 14:00:52

标签: c# rest messagecontract uritemplate

我有这个代码,一切都运作良好

 [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; }
    }

但是有一个错误。无法将MessageContractUriTemplate一起使用,但我如何使用请求参数指定服务地址?

0 个答案:

没有答案