Cook Computing博客上有一篇文章,讨论如何使用.NET 4中的动力学来创建动态RPC调用。 (帖子:ALTERNATIVE SYNTAX FOR MEMBER CALLS ON C# DYNAMIC TYPES

该帖子显示以下示例:

using System.Dynamic;

class XmlRpcClient : DynamicObject
{
  string endpoint;

  public XmlRpcClient(string endpoint)
  {
    this.endpoint = endpoint;
  }

  public object Invoke(string methodName, object[] args)
  {
    return 5; // actually make call to XML-RPC endpoint here
  }

  public override bool TryInvokeMember(InvokeMemberBinder binder, object[] args,
    out object result)
  {
    result = Invoke(binder.Name, args);
    return true;
  }
}


我不理解的部分是注释,它说明“实际上在这里对XML-RPC端点进行了调用”。

是否可以在invoke方法中使用XML-RPC.NET库,还是需要进行HttpWebRequest调用?

谢谢

最佳答案

当我写文章“ Alternative Syntax…”时,才刚刚宣布了C#中的动态支持,因此我只是在描述一种可能的实现,以利用这些新功能。

实现“实际上在此处对XML-RPC端点进行调用”将需要对XmlRpcClientProProcol类的调用,尽管该类需要进行一些小的修改才能以这种方式使用。

关于c# - XML-RPC.NET和C#动态类型,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6735291/

10-13 00:59