Home
VB.NET
DataRow Field Extension
Updated Jun 14, 2022
Dot Net Perls
DataRow Field. DataRow in VB.NET has a Field Function. This provides support for getting a field with no casting required. The field value is returned in the object type specified.
Function details. Field is a generic Function—we use it with special syntax. We must specify a type parameter like (Of String) in the function call.
DataRow
Example. This program first creates a DataTable. The table has 4 columns (Weight, Name, Code and Date). With For Each, we loop over the rows in the table.
For
And For each row, we call the Field() extension four times. In this way we get typed fields from the row.
Tip We can use an index argument (0, 2) to the Field extension. Or we can use a string argument ("Name", "Date").
Also The Field extension is a Generic Function. We use a type argument, such as (Of Integer), with it. This indicates the return type.
Module Module1 Sub Main() ' Create new table. Dim table As DataTable = New DataTable table.Columns.Add("Weight", GetType(Integer)) table.Columns.Add("Name", GetType(String)) table.Columns.Add("Code", GetType(String)) table.Columns.Add("Date", GetType(DateTime)) table.Rows.Add(57, "Koko", "A", DateTime.Now) table.Rows.Add(130, "Fido", "B", DateTime.Now) table.Rows.Add(92, "Alex", "C", DateTime.Now) table.Rows.Add(25, "Charles", "D", DateTime.Now) table.Rows.Add(7, "Candy", "E", DateTime.Now) ' Loop over rows. For Each row As DataRow In table.Rows ' Get fields. Dim weight As Integer = row.Field(Of Integer)(0) Dim name As String = row.Field(Of String)("Name") Dim code As String = row.Field(Of String)(2) Dim date1 As DateTime = row.Field(Of DateTime)("Date") ' Display fields. Console.WriteLine("{0} {1} {2} {3}", weight, name, code, date1) Next End Sub End Module
57 Koko A 6/10/2013 5:00:47 PM 130 Fido B 6/10/2013 5:00:47 PM 92 Alex C 6/10/2013 5:00:47 PM 25 Charles D 6/10/2013 5:00:47 PM 7 Candy E 6/10/2013 5:00:47 PM
Notes, casting. Casting often leads to problems because of its confusing syntax and the extra steps needed. With Field, objects are returned strongly-typed—no casting is needed.
Summary. With DataRow, cells can be retried with the Items array. But the Field generic Function can also be used. It can lead to clearer code when using DataTable.
Dot Net Perls is a collection of pages with code examples, which are updated to stay current. Programming is an art, and it can be learned from examples.
Donate to this site to help offset the costs of running the server. Sites like this will cease to exist if there is no financial support for them.
Sam Allen is passionate about computer languages, and he maintains 100% of the material available on this website. He hopes it makes the world a nicer place.
This page was last updated on Jun 14, 2022 (edit link).
Home
Changes
© 2007-2025 Sam Allen