65.9K
CodeProject 正在变化。 阅读更多。
Home

.NET DataTable 到 JSON 格式转换工具,用于 WCF 服务

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.71/5 (6投票s)

2013年11月4日

CPOL

2分钟阅读

viewsIcon

18379

downloadIcon

334

一个 .NET v4 库,用于将 DataTable 行转换为 JSON 字符串,以便用于 WCF 服务

引言

附件中的插件是一个有用的插件,旨在帮助将 .NET DataTables 转换为 JSON 格式的字符串,这些字符串可以通过 WCF 服务 传递,而不会影响管道。
我创建它是因为我开发了许多自定义 .NET 库用于 WCF 服务,并且考虑到 JSON 的足迹以及移动设备对数据的访问。我只是想要一个可以轻松集成到我现有应用程序中的解决方案,而无需构建新的应用程序。

背景

正如我在介绍中提到的,我主要是一个 Windows 平台开发人员,并且非常喜欢 WCF 服务。然而,随着移动设备和应用程序的普及,开发人员需要非常小心地处理数据消耗。在传输格式方面,我最近了解到 JSON 似乎是事实上的移动数据传输格式,并创建了一个小型库(附件下载)来帮助像我这样的人。

Using the Code

.NET 平台:4.0

在 Visual Studio 中 -> 解决方案资源管理器

  1. 右键单击您的项目并选择“添加引用”
  2. 选择“浏览”选项卡并导航到解压缩文件的位置
  3. 选择 Munhemba.DataTableToJSON.dll

对于 C#,请执行以下操作

添加 [using Munhemba.DataTableToJSON;]

在您的代码中,声明库如下

public string GetTableRowsJSON()
{
    string jsonData = null;
    using ([yourDataSetName] [yourDataSet_Alias] = new [yourDataSetName]())
    {
        [yourDataSetName]TableAdapters.[YourTableNameAdapter] 
        [yourTableAdapterAlias] = new [yourDataSetName]TableAdapters.[YourTableNameAdapter]();
        [yourTableAdapterAlias].Fill([yourDataSetName].[YourTableName]);
        Munhemba.DataTableToJSON dtToJSON = 
        	new Munhemba.DataTableToJSON([yourDataSetName].[YourTableName]);
        jsonData = dtToJSON.outputString;
        return jsonData;
    }
}

您可以像往常一样通过 WCF 服务 暴露 GetTableToRows 函数,并仍然可以受益于 WCF 带来的管道,例如 WSHttpBinding 等。

祝您编码愉快。

关注点

我相信应用程序和数据库不再能够,实际上也不应该孤立存在。WCF 为各种数据库的 CRUD 提供了经过测试的平台,我个人曾与 MSSQL Server、MySQL、ORACLE 合作,并集成了其中一些数据库,我发现 JSON 格式由于其数据传输的轻量级(消息大小)以及与 JQuery 的良好关系,已成为 WCF 的多功能伴侣,因此值得研究和考虑。

历史

  • 第一篇文章发布于 2013 年 11 月 03 日
© . All rights reserved.