c# 将匿名类或者集合转Json格式数据一些方法
要说写这个功能呢也是因为工作需要,白天呢上班写个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格式数据一些方法的更多相关文章
- 使用C#中JavaScriptSerializer类将对象转换为Json格式数据
将对象转换为json格式字符串: private JavaScriptSerializer serializer = new JavaScriptSerializer(); protected voi ...
- Android中解析JSON格式数据常见方法合集
待解析的JSON格式的文件如下: [{"id":"5", "version":"1.0", "name&quo ...
- JS实现的一个query字符串转Json格式数据的方法
输入字符串的格式是 a=1&b=2&c=3 $.par2Json = function (string, overwrite) { var obj = {}, pairs = stri ...
- php里少用到的session_module_name,以及session的key值限制,简单将session存储为json格式数据的方法
这个函数的作用就是动态的设置php.ini里的session_save_handler,配合session_set_savepath可以在程序里自由配置session的后台方式. session_ca ...
- C#返回JSON格式数据
又类的属性生成json格式数据 using System; using System.Collections.Generic; using System.Linq; using System.Web; ...
- 解析json格式数据
实现目标 读取文件中的json格式数据,一行为一条json格式数据.进行解析封装成实体类. 通过google的Gson对象解析json格式数据 我现在解析的json格式数据为: {",&qu ...
- fastJson java后台转换json格式数据
什么事JSON? JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机器解析和生成. 它基于JavaScript Progra ...
- JSON(三)——java中对于JSON格式数据的解析之json-lib与jackson
java中对于JSON格式数据的操作,主要是json格式字符串与JavaBean之间的相互转换.java中能够解析JSON格式数据的框架有很多,比如json-lib,jackson,阿里巴巴的fast ...
- Java入门系列:处理Json格式数据
本节主要讲解: 1)json格式数据处理方法 2)第三方工具包的使用方法 3)java集合数据类型 [项目任务] 编写一个程序,显示未来的天气信息. [知识点解析] 为了方便后面代码的分析,先需要掌握 ...
随机推荐
- Clojure发音
Clojure的发音和单词closure是一样的.Clojure之父是这样解释Clojure名字来历的 “我想把这就几个元素包含在里面: C (C#), L (Lisp) and J (Java). ...
- Apriori算法原理总结
Apriori算法是常用的用于挖掘出数据关联规则的算法,它用来找出数据值中频繁出现的数据集合,找出这些集合的模式有助于我们做一些决策.比如在常见的超市购物数据集,或者电商的网购数据集中,如果我们找到了 ...
- 《HelloGitHub月刊》第10期
前言 这一年感谢大家的支持,小弟这里给大家拜年了! <HelloGitHub月刊>会一直做下去,欢迎大家加入进来提供更多的好的项目. 最后,祝愿大家:鸡年大吉- <HelloGitH ...
- 深入了解GCD
首先提出一些问题: dispatch_async 函数如何实现,分发到主队列和全局队列有什么区别,一定会新建线程执行任务么? dispatch_sync 函数如何实现,为什么说 GCD 死锁是队列导致 ...
- 内功心法 -- java.util.ArrayList<E> (3)
写在前面的话:读书破万卷,编码如有神--------------------------------------------------------------------下文主要对java.util ...
- LAMP学习小记
记录今天学习到的解决LAMP环境搭建的两个小问题: 问题1.xshell无法连接到虚拟机上的linux主机 解决方法: (1)进入网络配置文件: vi /etc/sysconfig/network-s ...
- JavaScript截取字符串的Slice、Substring、Substr函数简单比较还有indexof函数应用
//截取字符,一看就明白!!! var str = "0123456789"; alert(str.substring(5)); 弹出 //56789 alert(str.subs ...
- 普通用户创建ssh无密码访问
jenkins:120.145.120.76 ubuntu:kasumi msc1:10.25.164.100 ubuntu:kasumi 1.创建普通用户&修改密码: $useradd ub ...
- php分页查询
1.先把数据库里所有的数据分页显示在页面,并在显示数据的表格上方加上查询表单. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transit ...
- Asp.net mvc 知多少(九)
本系列主要翻译自<ASP.NET MVC Interview Questions and Answers >- By Shailendra Chauhan,想看英文原版的可访问http:/ ...