using System;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Dynamic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.Script.Serialization;
using System.Windows.Forms;
using Newtonsoft.Json;
namespace WindowsFormsApplication2
{
public partial class Form1 : Form
{
private List l = new List();
public Form1()
{
InitializeComponent();
}
private void button3_Click(object sender, EventArgs e)
{
List rowname = new List();
List colname = new List();
List> l1 = new List>();
//获得行名称
; i < l.Count; i++)
{
bool IsExist = true;
; j < rowname.Count; j++)
{
if (rowname[j].ToString() == l[i].Name)
{
IsExist = false;
break;
}
}
if (IsExist)
rowname.Add(l[i].Name);
}
// 获得列名称
; i < l.Count; i++)
{
bool IsExist = true;
; j < colname.Count; j++)
{
if (colname[j].ToString() == l[i].Type.ToString())
{
IsExist = false;
break;
}
}
if (IsExist)
colname.Add(l[i].Type.ToString());
}
colname.Insert(,"name");
//数据转换
; i < rowname.Count; i++)
{
dynamic exobj = new ExpandoObject();
var obj = (IDictionary) exobj;
obj.Add("name", rowname[i]);
List t = l.Where(c => c.Name.Equals(rowname[i])).ToList();
; j < t.Count(); j++)
{
obj.Add(t[j].Type.ToString(), t[j].Money);
}
l1.Add(obj);
}
DataTable dt = new DataTable("dt");
//创建列
; i < colname.Count; i++)
{
dt.Columns.Add(colname[i]);
}
//创建行
; i < l1.Count; i++)
{
DataRow r = dt.NewRow();
; j < dt.Columns.Count; j++)
{
r[j] = l1[i][colname[j]];
}
dt.Rows.Add(r);
}
dataGridView2.DataSource = dt;
]);
MessageBox.Show(json1);
}
private void Form1_Load(object sender, EventArgs e)
{
; i < ; i++)
{
Test t = new Test();
t.Type = ;
= "nametype" + i.ToString();
t.Money = + i;
l.Add(t);
}
; i < ; i++)
{
Test t = new Test();
t.Type = ;
= "nametype" + i.ToString();
t.Money = + i;
l.Add(t);
}
; i < ; i++)
{
Test t = new Test();
t.Type = ;
= "nametype" + i.ToString();
t.Money = + i;
l.Add(t);
}
dataGridView1.DataSource = l;
}
public class Test
{
public string Name { get; set; }
public int Type { get; set; }
public decimal Money { get; set; }
}
}
}java如何动态生成对象
转载文章标签 java如何动态生成对象 java expandoobject System List i++ 文章分类 Java 后端开发
上一篇:java应用附带文件打包成zip
-
Stanford CS336 assignment1 | Transformer Language Model Architecture
摘要 本文介绍了Transformer语言模型架构中
transformer 语言模型 深度学习 python pytorch
















