VB.NET에서 RESTful API를 쿼리하기 위해 Excel 용 VBA 프로그램에서 시도하고 있습니다.VB.NET에서 XML을 deserialize 할 수 없습니다.
그러나 XML을 올바르게 deserialize 할 수 없습니다. VBA를 측면에서
는 코드는 다음과 같은 : 당신이 볼 수 있듯이, 내가 잘 형성과 매우 간단한 XML 문서입니다 무엇을 믿는 보내고Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP")
URL = "http://localhost:50261/api/values"
objHTTP.Open "POST", URL, False
objHTTP.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0;Windows NT 5.0)"
objHTTP.setRequestHeader "Content-type", "application/xml"
objHTTP.send ("<?xml version=""1.0"" encoding=""UTF-8""?><KPISheet><site>mysite</site><unit>myunit</unit></KPISheet>)")
. 나는에 중단 점을 설정하면
Public Sub PostValue(<FromBody> oKPISheet As KPISheet)
Debug.Print("toto")
End Sub
:
Public Class KPISheet
Public Site As String
Public Unit As String
End Class
그리고 WebAPI의 'POST'를 얻을 :
VB.NET 측면에서, 나는 KPISheet라는 클래스가있다 디버그 라인, oKPISheet가 Nothing이라는 것을 알 수 있습니다. XML 파일은 deserialize되지 않습니다. 던져
예외 : 출력 창에서
, 나는 다음과 같은 오류 메시지가 'System.Runtime.Serialization.SerializationException'을 System.Runtime.Serialization.dll에 내가 함께 시도태그가 없으면 작동시킬 수 없습니다.
내가, 결국 JSON에 내 부하를 변경하고 그게 전부가 마법처럼 작동 ... – Maxime