C# > XML-RPC.NET > Python MailMan
我正在尝试使用一个.NET的网页应用程序来管理一个用Python运行的外部MailMan服务器。我已经成功建立了连接,并且所有基本功能都正常工作。现在剩下的最后一个问题是找到.NET中与Python的键值对列表相对应的数据类型。
我无法访问MailMan服务器的内部工作原理,只能从XML响应中收到异常信息。
Dictionary<string, object>
System.Collections.Generic.Dictionary`2[System.String,System.Object],这个类型无法映射到XML-RPC类型。
string[,]
消息=服务器返回了一个错误异常:[-32500] 'list'对象没有'keys'属性。
string
消息=服务器返回了一个错误异常:[-32500] 'str'对象没有'keys'属性。
KeyValuePair<string, object>
消息=服务器返回了一个错误异常:[-32500] 属性"Value"被忽略。
我是否遗漏了什么数据类型,或者有没有其他的解决方法?我考虑过手动构建那部分XML,但我不知道它应该是什么样子的,所以我不知道该如何编写或格式化它。
1 个回答
你可以在这里查看XML-RPC的规范:
这个规范详细说明了XML-RPC的不同数据格式。其中有一种叫“结构体”(struct),这可能正是你需要的。结构体可以包含多个成员,而这些成员又包含名称/值对。
如果你在使用XML-RPC.NET,你可以查看XML-RPC.NET的常见问题解答,了解XML-RPC的结构体是如何映射到.NET类型的:
http://www.xml-rpc.net/faq/xmlrpcnetfaq-2-5-0.html#1.102
看起来XML-RPC的结构体可以映射到.NET的结构体或类。
不确定这是否对你有帮助,但这些是我在处理XML-RPC时用到的资源。