Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 22953|Odpowiedź: 0

[Źródło] .net konwertuje DataTable w kolekcję

[Skopiuj link]
Opublikowano 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.         }
Skopiuj kod






Poprzedni:Typy SQL Server odpowiadają typom C#
Następny:Rozszerzenie nie jest wymienione w Chrome Web Store i mogło zostać dodane bez Twojej wiedzy.
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com