17

I need to make XMLRPC calls from my C# application and I failed to find any help with that. When I used XMLRPC from Ruby, it's that simple:

server = XMLRPC::Client.new2("http://server/api.php")
result = server.call("remote.procedure", [1, [['crit1', 'crit2', 'crit3']]])

is there any similar library for C#?

John Saunders
  • 160,644
  • 26
  • 247
  • 397

2 Answers2

22

It's very simple to use the xml-rpc.net library, here is what you need to do:

[XmlRpcUrl("http://url_to_your_server/api.php")]
public interface ISumAndDiff : IXmlRpcProxy
{
    [XmlRpcMethod("your.remote.procedure")]
    string testMyClient(string test);
}

ISumAndDiff proxy = XmlRpcProxyGen.Create<ISumAndDiff>();

string ret = proxy.testMyClient("test");
John Saunders
  • 160,644
  • 26
  • 247
  • 397
21

See if this library works for you
https://code.google.com/p/xmlrpcnet/

Alex
  • 6,228
  • 1
  • 22
  • 18
Joel Martinez
  • 46,929
  • 26
  • 130
  • 185
  • The problem with this library is that its quite dated and isn't compatible with either Windows Store or Phone apps and doesn't support async as well. There aren't any alternatives I know of at this time. – Ani Dec 23 '12 at 16:34
  • 4
    This library is open source, and is readily available (http://code.google.com/p/xmlrpcnet/source/checkout). I'm sure you could fork it and port it to these newer and more recent platforms :) – Joel Martinez Dec 24 '12 at 15:43