【发布时间】:2013-05-14 21:37:59
【问题描述】:
我收到这个错误
无法转换类型的对象 'System.Collections.Generic.List`1[TransTripLeg]' 键入“System.Data.DataTable”。
我似乎无法弄清楚如何解决它。错误发生在下面代码中的DataTable dtTable =。
if (!string.IsNullOrEmpty(Request.QueryString["EditMode"]))
{
DataTable dtUpdate = (DataTable)Session["TripRecords"];
DataRow[] customerRow = dtUpdate.Select("LegID = '" + sLegID.ToString() + "'");
我想我将它转换为类型 DataTable,但我仍然收到错误。
【问题讨论】:
-
正如错误明确所述,它不是 DataTable。
-
Session["TripRecords"] 是 List
类型。我猜是“(DataTable)Session["TripRecords"];"将其转换为类型 DataTable。 -
你不能简单地将所有东西都转换成所有东西——类型必须有共同点。
-
@Csharp:强制转换无法将对象转换为不相关的类型。阅读blogs.msdn.com/b/ericlippert/archive/2009/03/19/…
-
感谢@SLaks 的链接。