DotNetCore系列:在ASP.NET Core 3.1中獲取xml格式的介面入參並轉化為json

Hugo_Hoo發表於2020-10-26

今天接到一個公司新的開發任務,要對接微信第三方平臺的開發介面,肥貓表示極其難受啊。
可能有些大大會吐槽,有什麼好難受的,不就是微信嗎,趕緊去GitHub找程式碼或者是使用盛派的SDK啊,可是肥貓不服,我要自己寫,雖然肯定寫的不好~~~~
廢話不多說了,在看完開發文件之後,我開始進行第一個介面的開發(獲取驗證票據)。
這時候問題來了,因為微信的postData是xml格式的資料,在ASP.NET Core中要怎麼接收到xml格式的入參呢。幸好,偉大的ASP.NET Core框架早有準備。
在3.0之前的版本我們還需要引入Microsoft.AspNetCore.Mvc.Formatters.Xml的nuget包,在3.1的框架下,我們只需要在直接startup新增

AddXmlSerializerFormatters

就可以了,是不是非常簡單。
在這裡插入圖片描述
這時候,又出現了另一個小問題呢,那就是獲取到的xml資料如何轉化為我們日常開發熟悉使用的json型別呢,別急,請看下面:

XmlDocument doc = new XmlDocument();
            doc.LoadXml(param);
            string json = JsonConvert.SerializeXmlNode(doc);
            AWeChatOpenPlatformVerifyTicketParamXml WeChatOpenPlatformVerifyTicketParamxml = JsonConvert.DeserializeObject<WeChatOpenPlatformVerifyTicketParamXml>(json);

簡單的幾句程式碼,就能夠將你獲取的xml資料轉化為json格式啦,大家又可以開心的編碼下去了,今天就簡單分享到這裡,不說了,又要去敲程式碼了~~~~

大家有問題或者想和我交流的也可以關注我的微信公眾號:
在這裡插入圖片描述

相關文章