Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用restsharp向rest服务发送邮件_C#_Rest - Fatal编程技术网

C# 使用restsharp向rest服务发送邮件

C# 使用restsharp向rest服务发送邮件,c#,rest,C#,Rest,好的,我假设这是一个简单的问题,但是我在任何地方都找不到我的答案。。。我有一个客户端需要通过.net查询RESTAPI。他给我发送了api的url和数据样本。这是他寄来的: <?xml version="1.0"?> <root> <request> <APIClientID>0</APIClientID > <Version>0</Version> <APIPassword>password<

好的,我假设这是一个简单的问题,但是我在任何地方都找不到我的答案。。。我有一个客户端需要通过.net查询RESTAPI。他给我发送了api的url和数据样本。这是他寄来的:

<?xml version="1.0"?>
<root>
<request>
<APIClientID>0</APIClientID >
<Version>0</Version>
<APIPassword>password</APIPassword >
<Function>functionName</Function >
<Params>
<UserId>(current-datetime)</UserId >
<page>example.aspx</page>
<application>appName</application>
<function>functionName</function>
</Params>
</request >
</root >

任何关于我哪里出了问题的想法都会非常感激!我猜有一些关于hte xml的东西我没有正确地转换为restsharp调用,但我现在迷失了方向。。。谢谢

如果帖子正文需要是XML文档,请使用AddBody()。它默认将传递给它的对象序列化为XML。您可以使用与您尝试生成的架构匹配的匿名对象执行此操作:

var client = new RestClient();
client.BaseUrl = url;

var request = new RestRequest(Method.POST);
request.AddBody(new {
    root = new {
        request = new {
            APIClientID = 4,
            Version = 0,
            APIPassword = "password",
            Function = "TransAPIStats",
            Params = new {
                UserId = "abc",
                page = "example.aspx",
                Application = "hrblock-cb",
                Function = "ecb"
            }
        }
    }
});
或者,您可以定义一个与模式匹配的简单C#对象,并使用它代替内联匿名对象


如果需要对序列化进行控制(默认值应基于您显示的示例数据),则可以实现自己的iSeries。这方面的文档是这里的最后一部分:

Me认为XDocument序列化程序将是一个方便的工具:-)谢谢您的回复John!我补充说,在中,但是当我运行它时,我返回了以下错误:XmlException未处理:名称不能以“可能最好将其移动到groups.google.com/group/restsharp”开头,在那里将有更多的人可以提供帮助。
var client = new RestClient();
client.BaseUrl = url;

var request = new RestRequest(Method.POST);
request.AddBody(new {
    root = new {
        request = new {
            APIClientID = 4,
            Version = 0,
            APIPassword = "password",
            Function = "TransAPIStats",
            Params = new {
                UserId = "abc",
                page = "example.aspx",
                Application = "hrblock-cb",
                Function = "ecb"
            }
        }
    }
});