【发布时间】:2014-01-11 15:11:12
【问题描述】:
我的服务中有几个“发布”操作合同需要接收多个参数。我使用 Json 作为格式。想知道如果
- 预期的参数是 DataContract,我如何创建 URI 来自目标c?我必须指定 UriTemplate 吗?以下 是我拥有的两份合同。第一个处理 GET 我能够以 JSON 格式检索。我的问题是如果我想要 要修改和保存,我不知道如何将其传递回服务。
例如。
[ServiceContract]
public interface ICalendarService
{
[OperationContract]
[WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json, UriTemplate = "Event?eventId={eventId}&consumer={consumer}")]
Event GetEvent(int eventId, string consumer);
[OperationContract]
[WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.WrappedRequest)]
bool UpdateEventDetails(Event event);
}
[DataContract]
public class Event{
[DataMember]
public int Id { get; set; }
[DataMember]
public string Name { get; set; }
[DataMember]
public string Notes { get; set; }
[DataMember]
public bool Private { get; set; }
[DataMember]
public string Date { get; set; }
[DataMember]
public int AuditedById { get; set; }
}
- 我的下一个问题是关于帖子的最佳实践。应该 我总是使用数据合同?如果我只想编辑/修改 2 该数据合同上的属性,我是否只传递 两个属性?还是我要求它通过整个数据合同 还在吗?
【问题讨论】:
标签: c# objective-c wcf web-services wcf-data-services