XML_RPC v2.5.0 for .Netを使用して、製品データを送信するためにWebサービスを数回呼び出しています。1つのシナリオを除いて、すべての呼び出しは正常に機能しています。以下のフォーマットが期待されるWebサービスに製品データを送信しています(フォーマットはPhP言語で定義されています)-
$order['products'][] = ['sku', 'quantity']
私はこのデータを渡すために以下のコードを使用しています-
XmlRpcStruct dic = new XmlRpcStruct();
DataTable dt1 = GetData();
XmlRpcStruct[] prod = new XmlRpcStruct[dt1.Rows.Count];
for (int i = 0; i < dt1.Rows.Count; i++)
{
prod[i] = new XmlRpcStruct();
prod[i].Add("sku", dt1.Rows[i][0].ToString());
prod[i].Add("quantity", dt1.Rows[i][1].ToString());
}
dic.Add("products", prod);
object orderID = proxy.SubmitOrder(dic, custID, accessKey);
上記のコードは、データテーブルdt1に1行しかなく、orderIDを正常に取得した場合に機能します。ただし、データテーブルに複数のレコードがある場合、次のような例外が発生します-
パラメーターは、XML-RPCタイプにマップできないCookComputing.XmlRpc.XmlRpcStructタイプであるか、そのインスタンスを含みます。
私はここで何かばかげたものが欠けていると思います。助けて、私がここでどんな間違いをしているのか教えてください。前もって感謝します!