
正文
DataTable序列化及反序列化Json
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
添加Json解析引用
using Newtonsoft.Json;
实现方式一:普通转换
private void button1_Click(object sender, EventArgs e)
{
//序列化Json
string sql = "SELECT s.BusinessEntityID,s.Name FROM Sales.Store AS s";
textBox1.Text = JsonConvert.SerializeObject(DbHelper.GetDataTable(sql)); //反序列化Json
DataTable dt = new DataTable();
dt = JsonConvert.DeserializeObject<DataTable>(textBox1.Text);
dataGridView1.DataSource = dt;
}
实现方式二:Task任务
private void button1_Click(object sender, EventArgs e)
{
//序列化Json
string sql = "SELECT s.BusinessEntityID,s.Name FROM Sales.Store AS s";
Task<string> task = new Task<string>(() => JsonConvert.SerializeObject(DbHelper.GetDataTable(sql)));
task.Start();
task.Wait();
textBox1.Text = task.Result; //反序列化Json
DataTable dt = new DataTable();
string json = textBox1.Text;
Task<DataTable> dtTask = new Task<DataTable>(() => JsonConvert.DeserializeObject<DataTable>(json));
dtTask.Start();
dtTask.Wait();
dataGridView1.DataSource = dtTask.Result;
}
效果






