Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 22953|Odpověď: 0

[Zdroj] .net převádí DataTable na kolekci

[Kopírovat odkaz]
Zveřejněno 19.01.2016 12:22:57 | | |
  1. /// <summary>
  2.         /// 将DataTable转成集合
  3.         /// </summary>
  4.         /// <typeparam name="T"></typeparam>
  5.         /// <param name="dt"></param>
  6.         /// <returns></returns>
  7.         public static List<T> ToListFromDataTable<T>(this DataTable dt)
  8.         {
  9.             try
  10.             {
  11.                 List<T> list = new List<T>();
  12.                 T t = default(T);
  13.                 PropertyInfo[] propertypes = null;
  14.                 string tempName = string.Empty;

  15.                 foreach (DataRow row in dt.Rows)
  16.                 {
  17.                     t = Activator.CreateInstance<T>();
  18.                     propertypes = t.GetType().GetProperties();

  19.                     foreach (PropertyInfo pro in propertypes)
  20.                     {
  21.                         tempName = pro.Name;
  22.                         if (dt.Columns.Contains(tempName))
  23.                         {
  24.                             object value = row[tempName];
  25.                             if (value.GetType() == typeof(System.DBNull))
  26.                             {
  27.                                 value = null;
  28.                             }
  29.                             pro.SetValue(t, value, null);
  30.                         }
  31.                     }
  32.                     list.Add(t);
  33.                 }
  34.                 return list;
  35.             }
  36.             catch
  37.             {
  38.                 return null;
  39.             }
  40.         }
Kopírovat kód






Předchozí:Typy SQL Serveru odpovídají typům v C#
Další:Rozšíření není uvedeno v Chrome Web Store a mohlo být přidáno bez vašeho vědomí.
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com