序列化/反序列化實體時可以改寫默認的WCF DataContractSerializer行為,而改用JSON.NET嗎?我具有以下處理城市實體的服務合同。出于設計原因,City實體的IsReference = true,因此默認的DataContractSerializer引發錯誤。對于“ GET”方法,我可以使用JsonConvert.DeserializeObject處理這種情況,但是對于“ PUT,POST,DELETE”方法,DataContractSerializer優先并且無法抱怨IsReference實體無法序列化。我已經找到了實現IOperationBehavior并提供我自己的序列化程序的帖子,但是我不知道如何將Json.NET與此集成。我相信應該有更直接的方法。對于這種情況的任何幫助或指導,或對其他方法的建議,我將不勝感激。[ServiceContract][AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)[ServiceBehavior(InstanceContextMode = InstanceContextMode.PerCall)]public class CityService{ [Description("Get all Cities")] [WebGet(UriTemplate = "")] public Message Cities() { } [Description("Allows the details of a single City to be updated.")] [WebInvoke(UriTemplate = "{code}", Method = "PUT")] public Message UpdateCity(string code, City city) { }}
添加回答
舉報
0/150
提交
取消