This code creates a data table and prepares the columns. For anyone's convenience since it's tedious to type it all out.
//create a data table that will hold all of the products from the excel file
DataTable productsDataTable = new DataTable();
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "Id",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "ProductTypeId",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "ParentGroupedProductId",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "VisibleIndividually",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "Name",
DataType = System.Type.GetType("System.String")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = true,
ColumnName = "ShortDescription",
DataType = System.Type.GetType("System.String")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = true,
ColumnName = "FullDescription",
DataType = System.Type.GetType("System.String")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = true,
ColumnName = "AdminComment",
DataType = System.Type.GetType("System.String")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "ProductTemplateId",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "VendorId",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "ShowOnHomePage",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = true,
ColumnName = "MetaKeywords",
DataType = System.Type.GetType("System.String")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = true,
ColumnName = "MetaDescription",
DataType = System.Type.GetType("System.String")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = true,
ColumnName = "MetaTitle",
DataType = System.Type.GetType("System.String")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "AllowCustomerReviews",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "ApprovedRatingSum",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "NotApprovedRatingSum",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "ApprovedTotalReviews",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "NotApprovedTotalReviews",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "SubjectToAcl",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "LimitedToStores",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = true,
ColumnName = "Sku",
DataType = System.Type.GetType("System.String")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = true,
ColumnName = "ManufacturerPartNumber",
DataType = System.Type.GetType("System.String")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = true,
ColumnName = "Gtin",
DataType = System.Type.GetType("System.String")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "IsGiftCard",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "GiftCardTypeId",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "RequireOtherProducts",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = true,
ColumnName = "RequiredProductIds",
DataType = System.Type.GetType("System.String")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "AutomaticallyAddRequiredProducts",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "IsDownload",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "DownloadId",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "UnlimitedDownloads",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "MaxNumberOfDownloads",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = true,
ColumnName = "DownloadExpirationDays",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "DownloadActivationTypeId",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "HasSampleDownload",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "SampleDownloadId",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "HasUserAgreement",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = true,
ColumnName = "UserAgreementText",
DataType = System.Type.GetType("System.String")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "IsRecurring",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "RecurringCycleLength",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "RecurringCyclePeriodId",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "RecurringTotalCycles",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "IsShipEnabled",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "IsFreeShipping",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "AdditionalShippingCharge",
DataType = System.Type.GetType("System.Decimal")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "IsTaxExempt",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "TaxCategoryId",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "ManageInventoryMethodId",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "StockQuantity",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "DisplayStockAvailability",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "DisplayStockQuantity",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "MinStockQuantity",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "LowStockActivityId",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "NotifyAdminForQuantityBelow",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "BackorderModeId",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "AllowBackInStockSubscriptions",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "OrderMinimumQuantity",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "OrderMaximumQuantity",
DataType = System.Type.GetType("System.Int32")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = true,
ColumnName = "AllowedQuantities",
DataType = System.Type.GetType("System.String")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "DisableBuyButton",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "DisableWishlistButton",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "AvailableForPreOrder",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "CallForPrice",
DataType = System.Type.GetType("System.Boolean")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "Price",
DataType = System.Type.GetType("System.Decimal")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "OldPrice",
DataType = System.Type.GetType("System.Decimal")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = false,
ColumnName = "ProductCost",
DataType = System.Type.GetType("System.Decimal")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = true,
ColumnName = "SpecialPrice",
DataType = System.Type.GetType("System.Decimal")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = true,
ColumnName = "SpecialPriceStartDateTimeUtc",
DataType = System.Type.GetType("System.DateTime")
}
);
productsDataTable.Columns.Add(new DataColumn()
{
AllowDBNull = true,
ColumnName = "SpecialPriceEndDateTimeUtc",
DataType = System.Type.GetType("System.DateTime")
}
);