簡體   English   中英

mono c#。 DataRow:“Field”擴展方法丟失了嗎?

[英]mono c#. DataRow: “Field” extension method missing?

在Windows(.NET Framework 3和3.5)中編寫C#時,我經常使用DataRow對象(或DataRowCollection)。 現在,我想在Linux中使用mono開發的C#程序中使用它。 我的問題是:我在使用單聲道時沒有找到DataRow的“Field”擴展方法......有人可以幫助我嗎?

提前致謝。

(例如: return ds.Table[0].Rows[0].Field<int>(0)

通過查看文檔 ,Field在System.Data.DataSetExtensions中定義。 我不確定它是否在Mono中可用,但嘗試為此命名空間添加“using”語句。 如果找不到命名空間,可能需要在項目中添加引用。

您引用的擴展方法在System.Data.DataSetExtensions.dll中定義。 如果該程序集是Mono發行版的一部分,則應添加對它的引用。 如果不是,您可以嘗試從MS .NET安裝中復制它,看看它是否有效。

GetInt32(0)什么不同?

天啊。

您確實應該使用名稱作為數據集合的索引鍵:ds.Table [“Table Name”]。行[rowIndex] [“Column Name”]

更具可讀性和可維護性。

編輯:VB字段擴展方法:

<Extension>
Public Function Field(ByRef tRow As DataRow, ByVal tColumnName As String) As Object
    Return tRow(tColumnName)
End Function

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM