POST()
ウェブサイトにデータを順次送信したい。post1 を終了してから post2 を開始し、次に post3 などを開始します。コンパイルする構文はありますが、エラーが発生し、どうすればよいかわかりません。
AggregateException がキャッチされ
ました 1 つ以上のエラーが発生しました
私が使用する構文は次のとおりです。
private multipost()
{
string postsite = string.Format("http://requestb.in/1g5y7234");
string postData = "";
string responseMessage = "";
DataTable grds = new DataTable();
grds.Columns.Add("Dosage", typeof(int));
grds.Columns.Add("Drug", typeof(string));
grds.Columns.Add("Patient", typeof(string));
grds.Columns.Add("Date", typeof(DateTime));
grds.Rows.Add(25, "Indocin", "David", DateTime.Now);
grds.Rows.Add(50, "Enebrel", "Sam", DateTime.Now);
grds.Rows.Add(10, "Hydralazine", "Christoff", DateTime.Now);
grds.Rows.Add(21, "Combivent", "Janet", DateTime.Now);
grds.Rows.Add(100, "Dilantin", "Melanie", DateTime.Now);
try
{
Parallel.ForEach(grds.Rows.OfType<DataRow>(), row =>
{
foreach (var item in row.ItemArray)
{
postData += "=" + item + "&";
postData += "d2p=";
System.Net.HttpWebRequest r = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(postsite);
r.Method = "POST";
r.Accept = "application/json";
r.ContentType = "application/x-www-form-urlencoded";
r.ContentLength = postData.Length;
r.KeepAlive = false;
using (System.IO.StreamWriter sw = new System.IO.StreamWriter(r.GetRequestStream()))
{
try { sw.Write(postData); }
catch (Exception ex) { responseMessage = ex.Message; }
}
var response = r.GetResponse();
Stream receiveStream = response.GetResponseStream();
StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8);
var result = readStream.ReadToEnd();
var xml = System.Xml.Linq.XElement.Parse(result);
if (xml.Elements("success").FirstOrDefault().Value == "1") { responseMessage = "Success"; }
else
{
var errors = xml.Elements("errors");
foreach (var error in errors.Elements("error")) { responseMessage = error.Value; }
}
}
});
}
catch (Exception mbop) { throw mbop; }
}
強力な頭脳に実際に質問するのを忘れていたようです。このエラーの原因は何ですか?このエラーを克服するにはどうすればよいですか?
編集ブロックを
次のように変更しましたcatch{}
catch (Exception mbop)
{
while (mbop.InnerException != null)
throw mbop;
}
そして、InnerException
それが生み出したのは
ルート レベルのデータは無効です。行 1、位置 1