Click here to Skip to main content
Rate this: bad
good
Please Sign up or sign in to vote.
How convert my datatable in list collection class.
Posted 4-Feb-13 17:52pm
Rate this: bad
good
Please Sign up or sign in to vote.

Solution 2

If you're using .NET 3.5, you can use DataTableExtensions.AsEnumerable (an extension method) and then if you really need a List<DataRow> instead of just IEnumerable<DataRow> you can call Enumerable.ToList:
 

IEnumerable<DataRow> sequence = dt.AsEnumerable();
or
 
List<DataRow> list = dt.AsEnumerable().ToList();
 
With C# 3.0 and System.Data.DataSetExtensions.dll,
 
List<DataRow> rows = table.Rows.Cast<DataRow>().ToList();
  Permalink  
v2
Rate this: bad
good
Please Sign up or sign in to vote.

Solution 1

public List Select()
{
List lc = null;
SqlParameter[] paras = new SqlParameter[1];
string sql = "OLTaskMaster_Proc";
paras[0] = new SqlParameter("@mode", "Select");
 
DataSet ds = DA_Base.RunReturnDS(sql, CommandType.StoredProcedure, paras);
if (ds.Tables.Count > 0)
{
DataTable dt = ds.Tables[0];
lc = (from DataRow row in dt.Rows
select new TaskMaster()
{
nTaskMasterID = Convert.ToInt32(String.IsNullOrEmpty(row["nTaskMasterID"].ToString()) ? "-1" : row["nTaskMasterID"].ToString()),
nTaskCategoryID = Convert.ToInt32(String.IsNullOrEmpty(row["nTaskCategoryID"].ToString()) ? "-1" : row["nTaskCategoryID"].ToString()),
strTaskName = String.IsNullOrEmpty(row["strTaskName"].ToString()) ? "" : row["strTaskName"].ToString(),
strTaskDesc = String.IsNullOrEmpty(row["strTaskDesc"].ToString()) ? "" : row["strTaskDesc"].ToString(),
}).ToList();
}
return lc;
}
  Permalink  

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 OriginalGriff 195
1 ProgramFOX 130
2 Maciej Los 105
3 Sergey Alexandrovich Kryukov 105
4 Afzaal Ahmad Zeeshan 82
0 OriginalGriff 6,564
1 Sergey Alexandrovich Kryukov 6,048
2 DamithSL 5,228
3 Manas Bhardwaj 4,717
4 Maciej Los 4,150


Advertise | Privacy | Mobile
Web03 | 2.8.1411022.1 | Last Updated 4 Feb 2013
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100