【发布时间】:2013-05-03 15:25:50
【问题描述】:
我需要创建一个 Post WCF 操作。我需要用户传入几个参数。我看到的所有示例都假设用户只会发送一个参数。我怎样才能做到这一点?客户端发送的url不会很长吧?
[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));
【问题讨论】:
-
将它包装成一个 POCO 类,这应该很容易。而且由于它是一个发布操作,您可以将您的 URL 设置为 changeStatus 而无需任何查询字符串。
-
如果我没有在 URITemplate 中提供参数,用户如何传入 POCO 类?
-
每个Http Post都有一个消息体,可以通过消息体传递POCO对象。