이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 22953|회답: 0

[출처] .net은 DataTable을 컬렉션으로 변환합니다

[링크 복사]
게시됨 2016. 1. 19. 오후 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.         }
코드 복사






이전의:SQL Server 타입은 C# 타입에 대응합니다
다음:확장 프로그램은 크롬 웹스토어에 등록되어 있지 않으며, 당신이 모르게 추가되었을 수도 있습니다.
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com