AutoCAD.Net/C#.Net QQ群:193522571 LinQ获取当前查询结果的字段名,并且遍历各字段值

 1         private void FormNozzle_Load(object sender, EventArgs e)
 2         {
 3             Flange f = new Flange();
 4             f.FlangeSystem = FlangeSystem.ASMEB165;
 5             f.FlangeType = FlangeType.SO;
 6             f.FaceType = FaceType.RF;
 7             using (var LinkToSQL = new LinqToSQLDataContext())
 8             {
 9                 //Table<Z_ASMEB165_2009_SO_RF> swtoolsTable = LinkToSQL.GetTable<Z_ASMEB165_2009_SO_RF>();
10                 //取得表中所有记录
11                 var fl = from ee in LinkToSQL.Z_ASMEB165_2009_SO_RF
12                          where ee.FlangeType=="SO"
13                          && ee.FlangeFace=="RF"
14                          && ee.FlangePressure=="150"
15                          && ee.DN==100
16                          select ee;
17                 if (fl != null)
18                 {
19                     foreach (var row in fl)
20                     {
21                         //获取当前记录的属性
22                         foreach (var a in row.GetType().GetProperties())
23                         {
24                             string b = a.Name;
25                             var c = row.GetType().GetProperty(b).GetValue(row, null);
26                             try
27                             {
28                                 f.GetType().GetProperty(b).SetValue(f, c, null);
29                             }
30                             catch
31                             {
32                             }
33                             string d = "";
34                         }
35                     }
36 
37                 }
38             }
39             f.Setting();
40             double aa = f.Mass();
41         }
View Code
原文地址:https://www.cnblogs.com/swtool/p/4024634.html