2014-02-04 3 views
0

Я разрабатываю службу XML-RPC на C#, используя XML-RPC.NET library. Служба будет использоваться для публикации форума пользователям Tapatalk.Как определить дополнительные параметры для метода с использованием XML-RPC.NET

В документации API Tapatalk указано, какие методы должны быть реализованы. Иногда параметр указывается как необязательный.

E.g. get_topic имеет 4 параметра: forum_id, start_num, last_num и mode

Метод вызывается приложением Tapatalk либо с всех параметров или только первые 3 (так mode опущен).

я определил методы следующим образом:

[XmlRpcMethod("get_topic"] 
public GetTopicResult GetTopic(string forum_id, int? start_num, int? last_num, string mode) 

Когда метод вызывается со всеми параметрами, указанными 4 все идет хорошо. Когда mode опущена я получаю следующее сообщение об ошибке: Request contains too few param elements based on method signature.

режим как задав дополнительный параметр не кажется, сделать трюк:

[XmlRpcMethod("get_topic"] 
public GetTopicResult GetTopic(string forum_id, int? start_num, int? last_num, string mode = "") 

Попытка перегрузить метод приводит к этой ошибке: Method GetTopic in type Mobiquo has duplicate XmlRpc method name get_topic

[XmlRpcMethod("get_topic"] 
public GetTopicResult GetTopic(string forum_id, int? start_num, int? last_num) 

[XmlRpcMethod("get_topic"] 
public GetTopicResult GetTopic(string forum_id, int? start_num, int? last_num, string mode) 

Любая идея, как указать параметр как необязательный?

Niels

ответ

1

Помогает ли это? Просто ввязаться в мир xml-rpc.

http://xml-rpc.net/faq/xmlrpcnetfaq-3-0-0.html#1.15

+0

Я проверил FAQ первую вещь, но это для дополнительного отображения параметров структуры ответа (если я правильно понимаю). –

Смежные вопросы