我遇到了RestSharp庫的問題。默認情況下,它使用dd/MM/yyyy HH:mm:ss
格式序列化DateTime對象。這不適合我的WCF服務,似乎只接受yyyy-MM-ddTHH:mm:ss
,所以我試圖用request.DateFormat = "yyyy-MM-ddTHH:mm:ss
改變請求的序列化。RestSharp - XmlSerializer不使用DateFormat屬性
即使設置正確,該屬性似乎對序列化沒有影響。至少在使用默認RestSharp.Serializers.XmlSerializer
時。如果我嘗試使用DotNetXmlSerializer
,DateFormat正在工作,但是然後序列化程序沒有包含我的XMLNS鏈接,並將版本&編碼行添加到xml輸出,其中一個或兩個都與WCF服務不兼容。
有沒有人有任何建議我做錯了XmlSerializer
?
這裏是有關的代碼塊:
var req = new RestRequest(endpoint, Method.POST);
req.RequestFormat = DataFormat.Xml;
//req.XmlSerializer = new DotNetXmlSerializer();
req.XmlSerializer = new XmlSerializer();
req.DateFormat = DATE_FORMAT;
req.AddBody(model, XMLNS);
凡private const string DATE_FORMAT = "yyyy-MM-ddTHH:mm:ss"
和XMLNS
是在WCF請求中使用的URL(從端點/幫助文檔拍攝)。