xml WebResponse を読み込むデータセットがあり、このデータセットからテーブルを抽出してマージします。マージされたテーブルに 7 つのハードコードされたラベルを追加してデータグリッドに表示するにはどうすればよいですか。ラベルは常に同じ値であり、順序は常に同じであること。
簡単にするために、テーブルに 7 行のヘッダーを追加したいと思いますか? データグリッドで表示します。
私が試したこと
WebRequest req = WebRequest.Create(m_uri);
WebResponse rsp;
req.Method = "POST";
req.ContentType = "text/xml";
StreamWriter writer = new StreamWriter(req.GetRequestStream());
writer.WriteLine(buildXml().ToString());
writer.Close();
rsp = req.GetResponse();
//Get the Posted Data
StreamReader reader = new StreamReader(rsp.GetResponseStream());
string rawXml = reader.ReadToEnd();
XmlDocument xml = new XmlDocument();
xml.LoadXml(rawXml);
//Use XPath to Navigate the Document
int status = Convert.ToInt32(xml.SelectSingleNode(@"/RatingServiceSelectionResponse/Response/ResponseStatusCode").InnerText);
if (status == 1)
{
StringReader srxml = new StringReader(rawXml);
DataSet dsAuthors = new DataSet("RatedShipment");
dsAuthors.ReadXml(srxml);
dsAuthors.EnforceConstraints = false;
DataTable Shipment = dsAuthors.Tables[2];
DataTable TotalCharges = dsAuthors.Tables[8];
DataTable table = new DataTable("UPS Service");
Shipment.Merge(TotalCharges);
Shipment.Columns.Remove("RatedShipmentWarning");
Shipment.Columns.Remove("CurrencyCode");
Shipment.Rows.RemoveAt(7);
DataColumn UPSService = new DataColumn();
UPSService.DataType = typeof(string);
UPSService.ColumnName = "UPS Service";
Shipment.Columns.Add(UPSService);
Shipment.Rows[0].Cells[0].Value = "UPS Ground";
Shipment.Rows[1].Cells[0].Value = "UPS Three Day";
Shipment.Rows[2].Cells[0].Value = "UPS Second Day A.M.";
Shipment.Rows[3].Cells[0].Value = "UPS Second Day";
Shipment.Rows[6].Cells[0].Value = "UPS Next Day Air Saver";
Shipment.Rows[4].Cells[0].Value = "UPS Next Day Air Early A.M.";
Shipment.Rows[5].Cells[0].Value = "UPS Next Day Air";
dataGridView1.DataSource = Shipment;
}
else
{
MessageBox.Show("Unable To Process: Please Check All Fields Are Entered");
}
しかし、行の後のセルは正しくありません。