List<CrafModificationVo> cc = new List<CrafModificationVo>(); cc.Add(craft); var props = typeof(CrafModificationVo).GetProperties();//typeof:初始化一个新实例 var dt = new DataTable(); dt.Columns.AddRange(props.Select(p => new DataColumn(p.Name, p.PropertyType)).ToArray());//将新实例的类型和名称赋值给dt的头部 ArrayList tempList = new ArrayList();//创建DataTable行的数组 foreach (PropertyInfo pi in props)//把新实例的值给行的数组 { object obj = pi.GetValue(cc.ElementAt(0), null); tempList.Add(obj); } object[] array = tempList.ToArray(); dt.LoadDataRow(array, true);//查找并更新特定的行,没有创建一行,并给定特定的值