Advertisement
Guest User

Untitled

a guest
Jul 27th, 2017
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.30 KB | None | 0 0
  1. Employee objEmp = new Employee();
  2. List<Employee> empList = new List<Employee>();
  3. foreach (DataRow dr in ds.Tables[0].Rows)
  4. {
  5. empList.Add(new Employee { Name = Convert.ToString(dr["Name"]), Age = Convert.ToInt32(dr["Age"]) });
  6. }
  7.  
  8. var empList = ds.Tables[0].AsEnumerable().Select(dataRow => new Employee{Name = dataRow.Field<string>("Name")}).ToList();
  9.  
  10. public static class Extensions
  11. {
  12. public static List<T> ToList<T>(this DataTable table) where T : new()
  13. {
  14. IList<PropertyInfo> properties = typeof(T).GetProperties().ToList();
  15. List<T> result = new List<T>();
  16.  
  17. foreach (var row in table.Rows)
  18. {
  19. var item = CreateItemFromRow<T>((DataRow)row, properties);
  20. result.Add(item);
  21. }
  22.  
  23. return result;
  24. }
  25.  
  26. private static T CreateItemFromRow<T>(DataRow row, IList<PropertyInfo> properties) where T : new()
  27. {
  28. T item = new T();
  29. foreach (var property in properties)
  30. {
  31. if (property.PropertyType == typeof(System.DayOfWeek))
  32. {
  33. DayOfWeek day = (DayOfWeek)Enum.Parse(typeof(DayOfWeek), row[property.Name].ToString());
  34. property.SetValue(item,day,null);
  35. }
  36. else
  37. {
  38. if(row[property.Name] == DBNull.Value)
  39. property.SetValue(item, null, null);
  40. else
  41. property.SetValue(item, row[property.Name], null);
  42. }
  43. }
  44. return item;
  45. }
  46. }
  47.  
  48. List<Employee> lst = ds.Tables[0].ToList<Employee>();
  49.  
  50. var myData = ds.Tables[0].AsEnumerable().Select(r => new Employee {
  51. Name = r.Field<string>("Name"),
  52. Age = r.Field<int>("Age")
  53. });
  54. var list = myData.ToList(); // For if you really need a List and not IEnumerable
  55.  
  56. List<Employee> target = dt.AsEnumerable()
  57. .Select(row => new Employee
  58. {
  59. Name = row.Field<string?>(0).GetValueOrDefault(),
  60. Age= row.Field<int>(1)
  61. }).ToList();
  62.  
  63. DbDataAdapter adapter = DbProviderFactories.GetFactory(cmd.Connection).CreateDataAdapter();
  64. adapter.SelectCommand = cmd;
  65. DataSet ds = new DataSet();
  66. adapter.Fill(ds);
  67.  
  68. string s = ds.GetXmlSchema();
  69.  
  70. xsd datasetSchema.xsd /c
  71.  
  72. public static T Create<T>(string xml)
  73. {
  74. XmlSerializer serializer = new XmlSerializer(typeof(T));
  75. using (StringReader reader = new StringReader(xml))
  76. {
  77. T t = (T)serializer.Deserialize(reader);
  78.  
  79. reader.Close();
  80. return t;
  81. }
  82. }
  83.  
  84. var xml = ds.GetXml();
  85. var dataSetObjects = Create<NewDataSet>(xml);
  86.  
  87. DataSet ds = new DataSet();
  88. ds = obj.getXmlData();// get the multiple table in dataset.
  89.  
  90. Employee objEmp = new Employee ();// create the object of class Employee
  91. List<Employee > empList = new List<Employee >();
  92. int table = Convert.ToInt32(ds.Tables.Count);// count the number of table in dataset
  93. for (int i = 1; i < table; i++)// set the table value in list one by one
  94. {
  95. foreach (DataRow dr in ds.Tables[i].Rows)
  96. {
  97. empList.Add(new Employee { Title1 = Convert.ToString(dr["Title"]), Hosting1 = Convert.ToString(dr["Hosting"]), Startdate1 = Convert.ToString(dr["Startdate"]), ExpDate1 = Convert.ToString(dr["ExpDate"]) });
  98. }
  99. }
  100. dataGridView1.DataSource = empList;
  101.  
  102. using Newtonsoft.Json;
  103. string JSONString = string.Empty;
  104. JSONString = JsonConvert.SerializeObject(ds.Tables[0]);
  105.  
  106. public static class Helper
  107. {
  108. public static List<T> DataTableToList<T>(this DataTable table) where T : class, new()
  109. {
  110. try
  111. {
  112. List<T> list = new List<T>();
  113.  
  114. foreach (var row in table.AsEnumerable())
  115. {
  116. T obj = new T();
  117.  
  118. foreach (var prop in obj.GetType().GetProperties())
  119. {
  120. try
  121. {
  122. PropertyInfo propertyInfo = obj.GetType().GetProperty(prop.Name);
  123. propertyInfo.SetValue(obj, Convert.ChangeType(row[prop.Name], propertyInfo.PropertyType), null);
  124. }
  125. catch
  126. {
  127. continue;
  128. }
  129. }
  130.  
  131. list.Add(obj);
  132. }
  133.  
  134. return list;
  135. }
  136. catch
  137. {
  138. return null;
  139. }
  140. }
  141. }
  142.  
  143. DataTable dtt = dsCallList.Tables[0];
  144. List<CallAssignment> lstCallAssignement = dtt.DataTableToList<CallAssignment>();
  145.  
  146. public DataTable ListToDataTable<T>(IList<T> data)
  147. {
  148. PropertyDescriptorCollection props =
  149. TypeDescriptor.GetProperties(typeof(T));
  150. DataTable table = new DataTable();
  151. for (int i = 0; i < props.Count; i++)
  152. {
  153. PropertyDescriptor prop = props[i];
  154. table.Columns.Add(prop.Name, prop.PropertyType);
  155. }
  156. object[] values = new object[props.Count];
  157. foreach (T item in data)
  158. {
  159. for (int i = 0; i < values.Length; i++)
  160. {
  161. values[i] = props[i].GetValue(item);
  162. }
  163. table.Rows.Add(values);
  164. }
  165. return table;
  166. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement