Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 41320|Atbildi: 12

[ASP.NET] [DBHelp] izmanto atstarošanas tehnoloģiju, lai iekapsulētu objektus sarakstos

[Kopēt saiti]
Publicēts 20.04.2015 14:52:57 | | | |
Šo ziņu pēdējo reizi rediģēja Delver_Si 2015-4-21 16:09

Kāda veida entītija man tiek piešķirta un kāda veida entītiju kolekcija tiek atgriezta

  1. //得到一个list<T>
  2.         public static List<T> getList<T>(string strSql)
  3.         {
  4.             List<T> list = new List<T>();

  5.             SqlConnection sqlConn = new SqlConnection(strConn);
  6.             SqlCommand sqlComm = new SqlCommand(strSql, sqlConn);
  7.             sqlConn.Open();
  8.             SqlDataReader sqlDR = sqlComm.ExecuteReader();

  9.             while (sqlDR.Read())
  10.             {
  11.                 //得到T的类型
  12.                 Type t = typeof(T); ;

  13.                 //查看类中的属性:
  14.                 PropertyInfo[] pis = t.GetProperties();
  15.                 // 用反射生成对象
  16.                 T model = Activator.CreateInstance<T>();
  17.                 foreach (PropertyInfo pi in pis)
  18.                 {
  19.                     if (pi!= null)
  20.                     {
  21.                         //取得特定字段并赋值
  22.                         pi.SetValue(model, sqlDR[pi.Name].ToString(), null);
  23.                     }
  24.                     }

  25.                 list.Add(model);
  26.             }
  27.             sqlConn.Close();

  28.             return list;

  29.         }
Kopēt kodu

Visa DBHelp.cs
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Data;
  6. using System.Data.SqlClient;
  7. using System.Reflection;

  8. namespace ManualAssign
  9. {
  10.     public class DBHelp
  11.     {
  12.         //数据库连接字符串
  13.         private static string strConn = "server=.;database=ManualAssign;integrated security=true";

  14.         //得到一个DataTable
  15.         public static DataTable getTable(string strSql)
  16.         {
  17.             SqlConnection sqlConn = new SqlConnection(strConn);
  18.             SqlDataAdapter sqlDA = new SqlDataAdapter(strSql,sqlConn);
  19.             DataTable dt = new DataTable();
  20.             sqlDA.Fill(dt);
  21.             return dt;
  22.         }

  23.         //增删改
  24.         public static void upDateDB(string strSql)
  25.         {
  26.             SqlConnection sqlConn = new SqlConnection(strConn);
  27.             SqlCommand sqlComm = new SqlCommand(strSql, sqlConn);
  28.             sqlConn.Open();
  29.             sqlComm.ExecuteNonQuery();
  30.             sqlConn.Close();
  31.         }


  32.         //得到一个list<T>
  33.         public static List<T> getList<T>(string strSql)
  34.         {
  35.             List<T> list = new List<T>();

  36.             SqlConnection sqlConn = new SqlConnection(strConn);
  37.             SqlCommand sqlComm = new SqlCommand(strSql, sqlConn);
  38.             sqlConn.Open();
  39.             SqlDataReader sqlDR = sqlComm.ExecuteReader();

  40.             while (sqlDR.Read())
  41.             {
  42.                 //得到T的类型
  43.                 Type t = typeof(T); ;

  44.                 //查看类中的属性:
  45.                 PropertyInfo[] pis = t.GetProperties();
  46.                 // 用反射生成对象
  47.                 T model = Activator.CreateInstance<T>();
  48.                 foreach (PropertyInfo pi in pis)
  49.                 {
  50.                     if (pi!= null)
  51.                     {
  52.                         //取得特定字段并赋值
  53.                         pi.SetValue(model, sqlDR[pi.Name].ToString(), null);
  54.                     }
  55.                     }

  56.                 list.Add(model);
  57.             }
  58.             sqlConn.Close();

  59.             return list;

  60.         }

  61.     }
  62. }
Kopēt kodu



Vērtējums

Dalībnieku skaits1MB+1 Veicināt+1 Sakļaut iemesls
Maz putas + 1 + 1 Ļoti spēcīgs!

Skatīt visus vērtējumus





Iepriekšējo:Ruijie skolu tīkls ir nestabils un bieži krīt, man ir risinājums!
Nākamo:Japāna izstrādā īpaši ātrgaitas kameras
 Saimnieks| Publicēts 20.04.2015 15:56:40 |
Xiao Zhazha Publicēts 2015-4-20 15:36
Es to izmēģināšu naktī, labāk būtu, ja būtu piemērs

Ir piemēri
 Saimnieks| Publicēts 20.04.2015 15:56:38 |
Xiao Zhazha Publicēts 2015-4-20 15:36
Es to izmēģināšu naktī, labāk būtu, ja būtu piemērs

Ir piemēri
Publicēts 01.08.2015 15:57:53 |
Pievienots DBHelp darījuma izpildes kods

Publicēts 20.04.2015 15:36:14 |
Es to izmēģināšu naktī, labāk būtu, ja būtu piemērs
 Saimnieks| Publicēts 21.04.2015 16:10:01 |
atjaunināts
Publicēts 21.04.2015 16:50:50 |
Vai varat augšupielādēt saspiestas pakotnes piemēru?
 Saimnieks| Publicēts 21.04.2015 21:06:48 |
avots

ManualAssign.rar

180.66 KB, Lejupielādes laiks: 6, Lejupielādēt kredītus: -1 prestige, -1 ieguldījums

 Saimnieks| Publicēts 21.04.2015 21:07:00 |
Xiao Zhazha Publicēts 2015-4-21 16:50
Vai varat augšupielādēt saspiestas pakotnes piemēru?

nosūtīts
Publicēts 22.04.2015 08:31:39 |

Labi, es paskatīšos
Publicēts 22.04.2015 10:51:19 |

Paņemiet to prom un sakiet paldies
Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com