要说写这个功能呢也是因为工作需要,白天呢上班写个Web页面需要ajax请求后台并将数据以Json格式传会前端,由于公司特殊性吧,不能连外网(很苦比)。所以只有等到晚上回家上网边查边写!

  public class DataToJson
{
private static System.Web.Script.Serialization.JavaScriptSerializer ser = new System.Web.Script.Serialization.JavaScriptSerializer(); //没问题
public static string GetJson(int state, string msg)
{
StringBuilder jsStr = new StringBuilder();
jsStr.Append("{");
jsStr.AppendFormat("\"State\":{0},\"Msg\":\"{1}\"", state, msg);
jsStr.Append("}");
return jsStr.ToString();
}
//没问题
public static string GetJson(string jsonName, object o)
{
StringBuilder jsStr = new StringBuilder();
jsStr.Append("{");
jsStr.AppendFormat("\"{0}\":{1}", jsonName, ser.Serialize(o));
jsStr.Append("}");
return jsStr.ToString();
}
public static string GetJson(int state, string jsonName, object o)
{
StringBuilder jsStr = new StringBuilder();
jsStr.Append("{");
jsStr.AppendFormat("\"State\":{0},\"{1}\":\"{2}\"", state, jsonName, ser.Serialize(o));
jsStr.Append("}");
return jsStr.ToString();
}
public static string GetJson(int state, string msg, string jsonName, object o)
{
StringBuilder jsStr = new StringBuilder();
jsStr.Append("{");
jsStr.AppendFormat("\"State\":{0},\"Msg\":\"{1}\",\"{2}\":{3}", state, msg, jsonName, ser.Serialize(o));
jsStr.Append("}");
return jsStr.ToString();
}
}

上面一段是我写了个公共方法类,主要还是够着JSON格式的字符串,写了几个能用上的重载方法!

    public partial class JsonTest : System.Web.UI.Page
{ protected void Page_Load(object sender, EventArgs e)
{
//var row List<Test> ls = new List<Test>();
ls.Add(new Test() { SonOne = "AA", SonTwo = "AAA", ID = });
ls.Add(new Test() { SonOne = "BB", SonTwo = "BBB", ID = });
ls.Add(new Test() { SonOne = "CC", SonTwo = "CCC", ID = });
ls.Add(new Test() { SonOne = "DD", SonTwo = "DDD", ID = });
string options = HttpContext.Current.Request["Option"];
if (options == "Search")
{
var row = ls.Select(r => new
{
SO1 = r.SonOne,
SO2 = r.SonTwo
}).ToList(); Response.Write(Common.DataToJson.GetJson(,"Success","Row",row));
Response.End();
} }
} public class Test
{
public string SonOne { get; set; } public string SonTwo { get; set; } public int ID { get; set; } }

上面一段构造了一个JsonTest.aspx也面然后构造个Test数据类,这里为了方便直接写在下面。其中row就是为了构造个匿名集合好测试用。

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="JsonTest.aspx.cs" Inherits="MyTest.JsonTest" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="Scripts/jquery-1.10.2.js"></script>
</head>
<body>
<form id="form1" runat="server">
<div>
<input type="button" id="btn" value="按钮" />
</div> </form>
</body>
<script type="text/javascript">
$(function () {
$('#btn').click(function () {
var da = "ID=10010";
$.ajax({
type: 'GET',
data: { Option: "Search" },
url: '/JsonTest.aspx',
dataType: 'JSON',
success: function (result) {
alert(result.State);
},
error: function () {
}
});
});
});
</script>
</html>

上面就是简单的前端测试代码!

当然也有Newtonsoft.Json.dll。这个也很好用,教程网上随便一搜就可以!

c# 将匿名类或者集合转Json格式数据一些方法的更多相关文章

  1. 使用C#中JavaScriptSerializer类将对象转换为Json格式数据

    将对象转换为json格式字符串: private JavaScriptSerializer serializer = new JavaScriptSerializer(); protected voi ...

  2. Android中解析JSON格式数据常见方法合集

    待解析的JSON格式的文件如下: [{"id":"5", "version":"1.0", "name&quo ...

  3. JS实现的一个query字符串转Json格式数据的方法

    输入字符串的格式是 a=1&b=2&c=3 $.par2Json = function (string, overwrite) { var obj = {}, pairs = stri ...

  4. php里少用到的session_module_name,以及session的key值限制,简单将session存储为json格式数据的方法

    这个函数的作用就是动态的设置php.ini里的session_save_handler,配合session_set_savepath可以在程序里自由配置session的后台方式. session_ca ...

  5. C#返回JSON格式数据

    又类的属性生成json格式数据 using System; using System.Collections.Generic; using System.Linq; using System.Web; ...

  6. 解析json格式数据

    实现目标 读取文件中的json格式数据,一行为一条json格式数据.进行解析封装成实体类. 通过google的Gson对象解析json格式数据 我现在解析的json格式数据为: {",&qu ...

  7. fastJson java后台转换json格式数据

    什么事JSON? JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机器解析和生成. 它基于JavaScript Progra ...

  8. JSON(三)——java中对于JSON格式数据的解析之json-lib与jackson

    java中对于JSON格式数据的操作,主要是json格式字符串与JavaBean之间的相互转换.java中能够解析JSON格式数据的框架有很多,比如json-lib,jackson,阿里巴巴的fast ...

  9. Java入门系列:处理Json格式数据

    本节主要讲解: 1)json格式数据处理方法 2)第三方工具包的使用方法 3)java集合数据类型 [项目任务] 编写一个程序,显示未来的天气信息. [知识点解析] 为了方便后面代码的分析,先需要掌握 ...

随机推荐

  1. ubuntu 下配置Web服务器

    ubuntu 下配置Web服务器 1.切换管理员身份 终端/文本界面输入命令: su 根据提示输入密码 注: 如果不能使用su 点击查看如何启用su2.安装MySQL5 apt-get install ...

  2. WinForm 进程、线程

    一.进程 进程是一个具有独立功能的程序关于某个数据集合的一次运行活动. 它可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体. Process 类,用来操作进程. 命名空间:using Sys ...

  3. 学习篇之String()

    // 3个特殊的引用类型:Boolean,Number,String var s1 = "some text"; ,); // me t ,); // me ,-); // so ...

  4. GoldenGate 传统抽取进程的 ADG 模式

    :first-child { margin-top: 0; } blockquote > :last-child { margin-bottom: 0; } img { border: 0; m ...

  5. PowerShell 批量修改AD属性

    环境:win 2008 R2 在管理工具中打开用于 windows powershell 的ActiveDirectory模块命令行窗口或打开命令提示符窗口输入PowerShell回车再输入impor ...

  6. ios 学习动画的套路 (一)

    你也肯定喜欢炫酷的动画! 在APP中,动画就是一个点睛之笔!可以给用户增加一些独特的体验感,估计也有许多的和我一样的,看着那些觉得不错的动画,也就只能流口水的孩子,毕竟~不知道从哪里下手去写!会连续的 ...

  7. Git学习之路(5)- 同步到远程仓库及多人协作问题

    ▓▓▓▓▓▓ 大致介绍 我们写好文件后添加到版本库,但是这样还没有做完,我们还需要将它同步到GitHub的远程仓库上,这里就以我们刚开始的drag项目为例,我们在Git学习之路(2)-安装GIt和创建 ...

  8. 配置FindBugs和常见FindBugs错误

    配置FindBugs: 在这里可以对FindBugs规则等进行详细设置. 选择你的项目,右键 => Properties => FindBugs => 1 Run Automatic ...

  9. 2017年2月16日-----------乱码新手自学.net 之MVC模型

    第二篇博文,最近学习的内容还是回到了正题:ASP.NET MVC5之上.虽然EF学了个一知半解,但是用这点知识,看MVC5的MODEL部分应该还是够了.尽管周末还要恶补一下EF才行. (一)MVC简述 ...

  10. 一步一步学Python(2) 连接多台主机执行脚本

    最近在客户现场,每日都需要巡检大量主机系统的备库信息.如果一台台执行,时间浪费的就太冤枉了. 参考同事之前写的一个python脚本,配合各主机上写好的shell检查脚本,实现一次操作得到所有巡检结果. ...