如何在XML-RPC和C#中使用枚举?

时间:2009-03-12 14:15:47

标签: c# xml-rpc enumeration

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

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

public enum Codes : int
{
    Installed = 903,
}

我感觉有一些简单的东西我可以俯视,但不能把手指放在上面,所以我在这里将我的蝙蝠信号照射到云层中!

2 个答案:

答案 0 :(得分:2)

尝试过显式铸造? (INT)安装

MSDN:

  

底层类型指定了多少   存储分配给每个   枚举。但是,一个明确的演员   从枚举类型转换是必要的   到一个整体类型。例如,   以下陈述指定   枚举器Sun到变量的   通过使用强制转换来输入int   从枚举到int:

     

int x =(int)Days.Sun;

答案 1 :(得分:2)

您必须将其明确地转换为int:

int code = Codes.Installed; // doesn't work.
int code = (int) Codes.Installed; // works.