我正在使用 LINQ 查询将DataTable
对象内的数据转换为简单IEnumerable
的自定义 POCO 对象。
我的 LINQ 查询是:
Dim dtMessages As DataTable
'...dtMessages is instantiated ByRef in a helper data access routine... '
Dim qry = From dr As DataRow In dtMessages.Rows
Select New OutboxMsg With {
.ComputerID = dr(dcComputerID),
.MessageData = dr(dcMessageData),
.OutBoxID = dr(dcOutBoxID),
.OutBoxReceivedID = dr(dcOutBoxReceivedID),
.TrxDate = dr(dcTrxDate)
}
但是,编译器会在以下消息中抛出警告dr As DataRow
消息:
Option Strict On 不允许从“Object”到“System.Data.DataRow”的隐式转换。
为什么我会收到此错误,我需要做些什么来修复它?我原以为dtMessages.Rows
返回了 type 的集合DataRow
。这不正确吗?