在 SOAP 信封中创建新字典
本文关键字:字典 新字典 创建 SOAP | 更新日期: 2023-09-27 17:56:04
非常基本的问题,但我似乎在任何地方都找不到答案。
如何在 SOAP 中指定Dictionary<string, string>
的新实例?基本上我有这个信封(省略信封顶级标签以提高可读性):
<soapenv:Body>
<tem:LogInWithCredentials>
<tem:Request>
<ttf1:Password>password</ttf1:Password>
<ttf1:UserName>username</ttf1:UserName>
<ttf1:RequestInfo></ttf1:RequestInfo>
</tem:Request>
</tem:LogInWithCredentials>
</soapenv:Body>
RequestInfo
是有问题的财产,但它总是null
。我假设信封中只有属性的存在会被反序列化为空Dictionary<string, string>
,但事实并非如此。
正如@flem所说,DataContractSerializer可能会提供回答这个问题所需的线索。序列化空字典会提供以下 XML。在您的 RequestInfo 元素中尝试一下,看看它是否有效(我自己还没有测试过)。
<ArrayOfKeyValueOfstringstring
xmlns:i="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />