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集合数据类型 [项目任务] 编写一个程序,显示未来的天气信息. [知识点解析] 为了方便后面代码的分析,先需要掌握 ...
随机推荐
- Spring MVC DispatcherServlet绑定多种URL
需要学习的内容: http://my.oschina.net/shishuifox/blog/215617 当前的处理方式,在web.xml中配置: <servlet> <servl ...
- overflow:hidden 你所不知道的事
overflow:hidden 你所不知道的事 overflow:hidden这个CSS样式是大家常用到的CSS样式,但是大多数人对这个样式的理解仅仅局限于隐藏溢出,而对于清除浮动这个含义不是很了解. ...
- HDU5875
Function Time Limit: 7000/3500 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)Total ...
- 同步、异步、阻塞、非阻塞IO
在网上看到一篇对这四个概念比较清晰的分析的文章:http://blog.csdn.net/historyasamirror/article/details/5778378.结合自己一直在学习Java ...
- ubuntu 笔记一
注:ubuntu14.04 64位 1.刚安装的ubuntu无法在终端使用su 原因:root没有默认密码,需要手动设定. 解决方法:以具有sudo权限的用户登录 给root用户设置密码:打开一个te ...
- java实现简单的单点登录_转
摘要:单点登录(SSO)的技术被越来越广泛地运用到各个领域的软件系统当中.本文从业务的角度分析了单点登录的需求和应用领域:从技术本身的角度分析了单点登录技术的内部机制和实现手段,并且给出Web-SSO ...
- 从你的全世界切过(胡说八道支持向量机SVM小故事)
背景 据说很久很久以前, 澳门有一家"胡说八道大赌场", 专门提供各种奇奇怪怪的玩法. 其中有一个赌博叫"从你的全世界切过"(连名字也这么奇怪). 玩法是在一张 ...
- Apache Derby倒斗之路-01小道消息
1.DERBY是什么: Apache Derby 是IBM于2004年贡献给Apache软件基金会的数据库,于2005年正式成为开源项目,Derby作为一个基于JAVA的关系型数据库框架,他拥有许多便 ...
- angular 输入框实现自定义验证
此插件使用angular.js.JQuery实现.(jQuery的引入需在angular 之前) 用户可以 在输入框输入数据后验证 必填项.整数型.浮点型验证. 如果在form 里面的输入框验证,可以 ...
- 【Javaweb】笔面试题 ---(1)
Javaweb 面试题:理解才是最重要的,而不是原封不动的背下来 一.请简述doget和dopost它们的区别 1) get是从服务器上获取数据,post是向服务器传送数据. 2) 在客户端,Get方 ...