WCF JSON后期操作

时间:2013-05-03 15:25:50

标签: json wcf rest

我需要创建一个Post WCF操作。我需要用户传入几个参数。我看到的所有示例都假设用户只会发送一个参数。我怎么能做到这一点?客户端发送的网址不会很长吗?

        [OperationContract]
        [WebInvoke(Method = "POST", UriTemplate = "changeStatus/{ID}/{userID}/{activityDate}/{locationID}/{attachmentID}/{descriptionID}", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)]
        void ChangeStatus(Guid ID, Guid userID, DateTime activityDate, Guid locationID, Guid attachmentID = default(Guid), Guid descriptionID = default(Guid));

1 个答案:

答案 0 :(得分:0)

您可以设置ChangeStatus方法以接收KeyValuePair类型的数组,然后您可以遍历数组并获取所需的值。当我需要发送多个或两个参数时,这通常是我构建Web服务的方式。

如果客户端正在执行POST来调用您的服务,那么数据可以作为对象传递而不是在查询字符串中传递,但如果它是通过查询字符串发送的,则是,url可能会变得非常长。