我正在使用LINQ查詢將DataTable
對象內的數據轉換爲自定義POCO對象的簡單IEnumerable
。爲什麼編譯器認爲這是一個Object而不是DataRow?
我的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
下拋出一個警告消息,與消息:
選項嚴格On不允許從「對象」到「系統的隱式轉換.Data.DataRow」。
爲什麼我得到這個錯誤,我需要做些什麼來解決它?我原以爲dtMessages.Rows
返回類型DataRow
的集合。這是不正確的?
顯示dtMessages是如何聲明和實例化的。 – bzlm 2010-08-02 14:42:42
@bzlm我更新了我的帖子,更多信息 – 2010-08-02 14:46:03
只需關閉'Option Strict'!我小子,我小子。 – Marc 2010-08-02 14:57:13