这里和两个变量存储两个表数据现在,我想通过Foreach循环将这些表添加到DataTable中吗?
$ sudo yarn feed
yarn run v1.12.3
$ node scripts/feed.js
(node:2527) UnhandledPromiseRejectionWarning: FetchError: invalid json response body at
https://hoversport.no/api/catalog/hoversport.no/product/_search?size=9000&from=0&sort=&_source_exclude=configurable_children%2Cconfigurable_options%2Csgn&_source_include=type_id%2Csku%2Cproduct_links%2Ctax_class_id%2Cspecial_price%2Cspecial_to_date%2Cspecial_from_date%2Cname%2Cprice%2CpriceInclTax%2CoriginalPriceInclTax%2CoriginalPrice%2CspecialPriceInclTax%2Cid%2Cimage%2Csale%2Cnew%2Curl_key%2Cstatus%2Ctier_prices%2Cdescription
reason: Unexpected token < in JSON at position 0
at /opt/bitnami/apps/hoversport.no/vue-storefront/node_modules/node-fetch/lib/body.js:48:31
at <anonymous>
at process._tickCallback (internal/process/next_tick.js:189:7)
(node:2527) UnhandledPromiseRejectionWarning: Unhandled promise rejection.
This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:2527) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
Done in 0.35s.
答案 0 :(得分:0)
如果要从每个表中获取所有列,可以执行以下操作:
var newTable = new DataTable();
//Copy the meter table into your new table
newTable = meterData.Copy();
//Use .Merge to merge in the level table
newTable.Merge(levelData);
如果要添加新行,请创建一个数据行并将其添加到数据表中:
// Create new DataRow objects and add to DataTable.
for(int i = 0; i < someNumberOfRows; i++)
{
row = newTable.NewRow();
row["column1"] = i;
row["column2"] = "item " + i.ToString();
newTable.Rows.Add(row);
}
如果您需要使用foreach,我假设您要迭代2个表中的行:
foreach(DataRow r in meterData.Rows)
{
row = newTable.NewRow();
row["someColumn"] = r["someColumn"];
row["someOtherColumn"] = r["someOtherColumn"];
newTable.Rows.Add(row);
}
答案 1 :(得分:0)
您可以像这样通过new row
循环添加foreach
var dataTable = new DataTable();
dataTable.Columns.Add("Meter", typeof(string));
dataTable.Columns.Add("Volume", typeof(int));
foreach (var items in Source) //source is the where you want to loop
{
DataRow row = dataTable.NewRow();
row["Meter"] = "meter";
//you can access value of source items through item.NameofTargetField like items.meter
row["Volume"] = 11;
dataTable.Rows.Add(row);
}