1

我在 C# 中使用 Cook Computing XMLRPC 框架。我正在调用一个需要 int 的远程函数。我想在客户端代码中使用枚举,而不是仅使用函数参数中硬编码的数字调用函数。

代码编译成功,但在测试期间抛出 XmlRpcUnsupportedTypeException。该消息指出我的枚举无法映射到 XML-RPC 类型。枚举如下:

public enum Codes : int
{
    Installed = 903,
}

我有一种感觉,我忽略了一些简单的东西,但我无法将手指放在它上面,所以我在这里将我的蝙蝠信号发射到云端!

4

2 回答 2

2

尝试过显式转换?(int)已安装

MSDN:

基础类型指定为每个枚举器分配多少存储空间。但是,从枚举类型转换为整数类型需要显式强制转换。例如,以下语句将枚举器 Sun 分配给 int 类型的变量,方法是使用强制转换从 enum 转换为 int:

int x = (int)Days.Sun;

于 2009-03-12T14:24:31.450 回答
2

您必须将其显式转换为 int:

int code = Codes.Installed; // doesn't work.
int code = (int) Codes.Installed; // works.
于 2009-03-12T14:25:36.970 回答