【发布时间】:2017-02-05 05:18:28
【问题描述】:
我正在尝试将查询转换为将显示在 datagridview 中的数据表,以便他们可以选择相应的行。
我收到此错误:
无法将类型为“f__AnonymousType1`5[System.Int32,System.String,System.String,System.String,System.Int32]”的对象转换为类型“System.IConvertible”。无法存储 在 ID Num 列中。预期类型是 Int32。"}
我的代码如下:
foreach (var badMO in badMOs)
{
var possibleFixes = dbReports.MoNumbers
.Where(q => (!string.IsNullOrEmpty(badMO.moNumber) &&
(q.moNumber1 == badMO.moNumber ||
q.moOrder == badMO.moNumber)) ||
(!string.IsNullOrEmpty(badMO.moOrder) &&
(q.moOrder == badMO.moOrder || q.moNumber1 == badMO.moOrder)))
.Select(s => new { s.id_moNumber, s.moNumber1,
s.moOrder, s.moClient, s.moQty })
.ToList();
foreach (var moFound in possibleFixes)
{
dtFixes.Rows.Add(possibleFixes.ToArray());
}
curJob.Rows.Add(badMOs);
MOFixForm fixForm = new MOFixForm(dtFixes, curJob);
fixForm.ShowDialog();
}
我在foreach moFound in possibleFixes 收到错误消息。
看着它我真的很接近,但我不明白如何转换查询以使其与IConvertible一起工作
【问题讨论】:
-
什么是
dtFixes? -
如果您需要帮助,您需要回答问题。
dtFixes是什么?请显示代码。