本文整理汇总了C#中MethodCall.CreateDocument方法的典型用法代码示例。如果您正苦于以下问题:C# MethodCall.CreateDocument方法的具体用法?C# MethodCall.CreateDocument怎么用?C# MethodCall.CreateDocument使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MethodCall
的用法示例。
在下文中一共展示了MethodCall.CreateDocument方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ExecuteAsync
//public MethodResponse Execute(MethodCall methodcall)
//{
// XDocument xDocument = methodcall.CreateDocument();
// WebRequest webRequest = WebRequest.Create(this.URL);
// if (this.Cookies != null)
// {
// HttpWebRequest httpWebRequest = webRequest as HttpWebRequest;
// httpWebRequest.CookieContainer = this.Cookies;
// }
// HttpWebRequest httpWebRequest2 = (HttpWebRequest)webRequest;
// httpWebRequest2.ServicePoint.Expect100Continue = this.EnableExpect100Continue;
// webRequest.Method = "POST";
// string s = xDocument.ToString();
// byte[] bytes = Encoding.UTF8.GetBytes(s);
// webRequest.ContentType = "text/xml;charset=utf-8";
// webRequest.ContentLength = (long)bytes.Length;
// using (Stream requestStream = webRequest.GetRequestStream())
// {
// requestStream.Write(bytes, 0, bytes.Length);
// }
// MethodResponse result;
// using (HttpWebResponse httpWebResponse = (HttpWebResponse)webRequest.GetResponse())
// {
// using (Stream responseStream = httpWebResponse.GetResponseStream())
// {
// if (responseStream == null)
// {
// throw new XmlRPCException("Response Stream is unexpectedly null");
// }
// using (StreamReader streamReader = new StreamReader(responseStream))
// {
// string content = streamReader.ReadToEnd();
// MethodResponse methodResponse = new MethodResponse(content);
// result = methodResponse;
// }
// }
// }
// return result;
//}
public async Task<MethodResponse> ExecuteAsync(MethodCall methodCall)
{
var xDocument = methodCall.CreateDocument();
var webRequest = WebRequest.Create(this.URL);
if (this.Cookies != null)
{
var httpWebRequest = webRequest as HttpWebRequest;
if (httpWebRequest != null)
{
httpWebRequest.CookieContainer = this.Cookies;
}
}
var httpWebRequest2 = (HttpWebRequest)webRequest;
httpWebRequest2.ServicePoint.Expect100Continue = this.EnableExpect100Continue;
webRequest.Method = "POST";
var s = xDocument.ToString();
var bytes = Encoding.UTF8.GetBytes(s);
webRequest.ContentType = "text/xml;charset=utf-8";
webRequest.ContentLength = bytes.Length;
using (var requestStream = await webRequest.GetRequestStreamAsync())
{
await requestStream.WriteAsync(bytes, 0, bytes.Length);
}
MethodResponse result;
using (var httpWebResponse = (HttpWebResponse)await webRequest.GetResponseAsync())
{
using (var responseStream = httpWebResponse.GetResponseStream())
{
if (responseStream == null)
{
throw new XmlRPCException("Response Stream is unexpectedly null");
}
using (StreamReader streamReader = new StreamReader(responseStream))
{
string content = await streamReader.ReadToEndAsync();
var methodResponse = new MethodResponse(content);
result = methodResponse;
}
}
}
return result;
}