Thursday, March 22, 2012

Dataset to Generic List. How to do this?

Hello,

I have a DataSet which results from accessing an SQL database.
Each row is an Article and has various columns like Title, Description, etc.

I have created a Generic List as follows:
Dim Articles As Generic.List(Of Article)

Article is a class with various properties. Each property is the same as each column in the dataset.

I want to fill the Generic List with the data from my DataSet.

How can I do this?

Thanks,
Miguel

Hi Miguel,

Here's an example:

PublicFunction GetArticles()As List(Of Article)
Dim articlesAsNew List(Of Article)
Dim connStrAsString

connStr = ConfigurationManager.ConnectionStrings.Item("MyDB").ConnectionString
Dim connAsNew SqlConnection(connStr)

Using cmdAsNew SqlCommand("select ArticleID, Title, Published from Articles", conn)

Dim dsAsNew DataSet()
Dim daAsNew SqlDataAdapter(cmd)

da.Fill(ds,"Articles")

Dim rowAs DataRow

ForEach rowIn ds.Tables("Articles").Rows
Dim artAsNew Article

art.ArticleID = row("ArticleID")
art.Title = row("Title")
art.Published = row("Published")

articles.Add(art)
Next
EndUsing

Return articles

EndFunctionJoe