数据库查询结果List到Json转换方法

需积分: 50 39 下载量 42 浏览量 更新于2024-09-11 收藏 4KB TXT 举报
该资源主要讲述的是如何将数据库查询结果,存储到List对象列表中,然后将这个列表转换成Json格式的数据。这是一个常见的操作,在Web服务或者API开发中经常遇到,用于将数据以易于处理的格式传递给前端或客户端。 在给定的代码示例中,我们看到一个名为`Get`的方法,它被标记为`[WebMethod]`,意味着它是一个可以被远程调用的Web服务方法。方法内首先创建了一个`List<object>`类型的列表`List`,接着打开一个SQL连接,执行SQL查询(选取`a`表中的所有列),并将查询结果读取到`SqlDataReader`对象`read`中。在读取结果的同时,将每一行数据转化为自定义类`Class1`的实例,并添加到`List`中。 `Class1`类应该包含了与数据库表`a`的列对应的属性,例如`A`, `B`, `C`等,这些属性的值通过`read["a"].ToString()`等方式获取。当所有数据读取完成后,关闭数据读取器和数据库连接。 接下来,使用`OjectListToJson`类将`List`转换成Json格式。`OjectListToJson`类提供了一个静态方法`GetObjectProperty`,用于获取对象的所有属性及其值,并以键值对的形式存入一个字符串列表中。然后,`OneObjectToJson`方法将对象转换为Json字符串,通过拼接`GetObjectProperty`返回的属性列表来实现。 最终,通过调用`toJson`方法(假设是`OjectListToJson`类的一个实例方法),将整个`List`对象列表转换为Json格式的字符串,并返回给调用者。 总结起来,这段代码涉及到的知识点有: 1. 数据库操作:使用`SqlConnection`、`SqlCommand`和`SqlDataReader`进行SQL查询。 2. 集合操作:创建和操作`List<T>`,包括添加元素。 3. 对象映射:将数据库查询结果映射到自定义类实例。 4. Json序列化:将对象列表转换为Json字符串,这里使用了一个自定义的转换方法,实际开发中通常会使用如Json.NET、System.Text.Json等库进行序列化。 5. Web服务方法:`[WebMethod]`特性表明这是一个可被远程调用的Web服务方法,常用于ASP.NET Web Service。 这样的操作流程对于构建数据驱动的Web应用非常常见,尤其是当需要将后端数据库数据以结构化的Json格式传递给前端展示时。