XML-RPCおよびC#で列挙型を使用するにはどうすればよいですか?
-
11-07-2019 - |
質問
C#でCook Computing XMLRPCフレームワークを使用しています。 intを予期するリモート関数を呼び出しています。関数パラメーターでハードコードされた数字で関数を呼び出すだけでなく、クライアントコードで列挙を使用したい。
コードは正常にコンパイルされますが、テスト中にXmlRpcUnsupportedTypeExceptionがスローされます。メッセージには、列挙型をXML-RPCタイプにマップできないことが示されています。列挙型は次のとおりです。
public enum Codes : int
{
Installed = 903,
}
見落としている単純なものがあるように感じますが、指を置くことができないので、ここにバット信号を雲に輝かせています!
解決
明示的なキャストを試みましたか? (int)インストール済み
MSDN:
基礎となるタイプは、 ストレージはそれぞれに割り当てられます 列挙子。ただし、明示的なキャスト 列挙型から変換するには必要です 整数型に。たとえば、 次のステートメントは 列挙子Sunの変数 変換するキャストを使用してintと入力します enumからint:
int x =(int)Days.Sun;
他のヒント
明示的にintにキャストする必要があります:
int code = Codes.Installed; // doesn't work.
int code = (int) Codes.Installed; // works.
所属していません StackOverflow