You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在C#中将MySQL的tbl_sales表导出为JSON文件并解决相关报错

解决C#中Newtonsoft.Json的JSONConvert不存在错误并导出MySQL表为JSON文件

嘿,我看你在把MySQL的tbl_sales表导出为JSON时遇到了类名错误,这就帮你搞定这个问题,顺便给你一套完整的实现方案:

首先,你碰到的The name 'JSONConvert' does not exist in the current context错误,主要是两个小问题导致的:

  • 类名拼写错误:Newtonsoft.Json里的正确类名是**JsonConvert**(注意Json是小写的s,不是大写的S),而且using语句得写成using Newtonsoft.Json;,不是using Newtonsoft.JSON;
  • 大概率还没安装Newtonsoft.Json的NuGet包

下面是一步步的解决和实现流程:

步骤1:安装必要的NuGet包

你需要两个核心包:

  • Newtonsoft.Json:负责把DataTable转成JSON
  • MySql.Data(或者更推荐的MySqlConnector):用来连接MySQL数据库

可以通过NuGet包管理器搜索安装,也能用命令行:

  • Package Manager Console命令:
    Install-Package Newtonsoft.Json
    Install-Package MySql.Data
    
  • .NET CLI命令:
    dotnet add package Newtonsoft.Json
    dotnet add package MySql.Data
    

步骤2:修正代码并实现完整导出逻辑

先把你的序列化方法改对,再加上从MySQL取数据、保存JSON文件的完整代码:

using MySql.Data.MySqlClient;
using Newtonsoft.Json;
using System.Data;
using System.IO;

public class SalesJsonExporter
{
    // 从MySQL获取tbl_sales的所有数据到DataTable
    private DataTable GetSalesDataFromDb()
    {
        // 替换成你自己的MySQL连接信息
        string connectionString = "server=localhost;database=你的数据库名;uid=你的用户名;pwd=你的密码;";
        DataTable salesTable = new DataTable();

        using (MySqlConnection conn = new MySqlConnection(connectionString))
        {
            string query = "SELECT sale_item, sale_qty, added_on, last_updated_on FROM tbl_sales;";
            MySqlDataAdapter adapter = new MySqlDataAdapter(query, conn);
            adapter.Fill(salesTable);
        }

        return salesTable;
    }

    // 将DataTable序列化为格式化后的JSON字符串
    public string ConvertDataTableToJson(DataTable table)
    {
        // 用正确的JsonConvert类,加上Formatting.Indented让JSON更易读
        return JsonConvert.SerializeObject(table, Formatting.Indented);
    }

    // 导出JSON到指定文件
    public void ExportSalesToJson(string outputPath = "sales_records.json")
    {
        DataTable salesData = GetSalesDataFromDb();
        string jsonContent = ConvertDataTableToJson(salesData);
        File.WriteAllText(outputPath, jsonContent);
    }
}

步骤3:调用导出方法

在你的业务代码里直接调用就行:

SalesJsonExporter exporter = new SalesJsonExporter();
exporter.ExportSalesToJson();

执行后,你会得到一个格式清晰的JSON文件,内容大概是这样:

[
  {
    "sale_item": "Fruits",
    "sale_qty": 56,
    "added_on": "2018-05-12T14:28:27",
    "last_updated_on": "2018-05-14T10:27:29"
  },
  {
    "sale_item": "Sugar",
    "sale_qty": 3,
    "added_on": "2017-11-14T04:24:15",
    "last_updated_on": "2018-05-13T05:22:14"
  },
  {
    "sale_item": "Biscuit",
    "sale_qty": 20,
    "added_on": "2018-05-01T18:47:19",
    "last_updated_on": "2018-05-07T06:24:08"
  }
]

内容的提问来源于stack exchange,提问作者Sakthy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 09:57:42