【发布时间】:2026-01-15 21:00:02
【问题描述】:
我有 Windows 应用程序,在其中我正在使用两个数据表构建数据集,一个是“产品”,另一个是“TaxView”。我在下面包含示例代码。在此代码中我收到错误 Input array is longer than the number of columns in this table强>
public DataTable[] getProductViewDetails(ArrayList ssd,ArrayList tax)
{
DataTable Products = new DataTable();
DataColumn SalesDetailID = Products.Columns.Add("SalesDetailID", typeof(System.INT32));
DataColumn BrandName = Products.Columns.Add("BrandName", typeof(System.String));
DataColumn ProductName = Products.Columns.Add("ProductName", typeof(System.String));
DataColumn Quantity = Products.Columns.Add("Quantity", typeof(System.INT32));
DataColumn Rate = Products.Columns.Add("Rate", typeof(System.INT32));
DataColumn Per = Products.Columns.Add("Per", typeof(System.String));
DataColumn Discount = Products.Columns.Add("Discount", typeof(System.String));
DataTable TaxView = new DataTable();
DataColumn SalesTaxDetailID = Products.Columns.Add("SalesTaxDetailID", typeof(System.Int32));
DataColumn TaxAmt = Products.Columns.Add("TaxAmt", typeof(System.Int32));
DataColumn Total = Products.Columns.Add("Total", typeof(System.Int32));
DataColumn TaxDesc = Products.Columns.Add("TaxDesc", typeof(System.String));
DataColumn TaxValues = Products.Columns.Add("TaxValues", typeof(System.INT32));
foreach (SalesStructDetails s in ssd)
{
//int previoustaxdetail;
Products.Rows.Add(1,HP, Printer, 2, 2100, pcs, 125);
foreach (TaxDetail t in tax)
{
if (s.SalesDetailId == t.SalesDetailID)
{
TaxView.Rows.Add(1, 125, 75, VAT, 4);
}
}
}
DataTable[] dt = new DataTable[2] { Products, TaxView };
return dt;
}
我在 TaxView.Rows.Add(1, 125, 75, VAT, 4);
【问题讨论】:
标签: c# sql-server-2005 dataset