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集合数据类型 [项目任务] 编写一个程序,显示未来的天气信息. [知识点解析] 为了方便后面代码的分析,先需要掌握 ...
随机推荐
- 国内值得关注的官方API集合
项目地址:https://github.com/marktony/Awesome_API 本页仅收集国内部分官方API,如需查看其他版本,请点击这里. 目录 笔记 出行 词典 电商 地图 电影 后端云 ...
- 【Zookeeper】源码分析之Watcher机制(三)之Zookeeper
一.前言 前面已经分析了Watcher机制中的大多数类,本篇对于ZKWatchManager的外部类Zookeeper进行分析. 二.Zookeeper源码分析 2.1 类的内部类 Zookeeper ...
- EFCore扩展:IQueryable(linq)或sql执行的查询缓存与清理
前言 上一篇讲述了执行sql和配置的一些功能,这篇说明IQueryable(linq)或执行sql的查询缓存与清理,包括扩展到将缓存存储到Redis中. 扩展类库源码: github:https:// ...
- 2017qq红包雨最强攻略,
这个只支持苹果手机,而且要有苹果电脑,只有苹果手机是不行的. QQ红包规则:只要你到达指定的位置,就可以领取附近的红包,一般也就几毛,还有几分的,当然也不排除有更高的,只不过我是没遇到... 那么既然 ...
- 字符集编码与Python(二)Unicode与utf-8
Python中的Unicode和utf-8 上一篇提过了字符集的历史其中简单的讲解了Unicode与utf-8的关系,简单的总结一下: utf-8和utf-16 .utf-32是一类,实现的功能是 ...
- EF6多线程与分库架构设计之Repository
1.项目背景 这里简单介绍一下项目需求背景,之前公司的项目基于EF++Repository+UnitOfWork的框架设计的,其中涉及到的技术有RabbitMq消息队列,Autofac依赖注入等常用的 ...
- 【iOS 录音转码MP3及转码BASE64上传】
iOS 录音转码MP3及转码BASE64上传 一,开始录音 NSLog(@"开始录音"); [self startRecord]; - (void)startRecord { // ...
- Salesforce的Auto Number
在Salesforce中新建Object的时候,可以对Name选择Auto Number,即自动编号.如果没有仔细阅读说明的话,会有一个很容易让人迷惑的地方. 在选择时候,Salesforce提供的示 ...
- 从C#到TypeScript - 变量
总目录 从C#到TypeScript - 类型 从C#到TypeScript - 高级类型 从C#到TypeScript - 变量 从C#到TypeScript - 接口 从C#到TypeScript ...
- EntityFramewok Core 1.1连接MSSql数据库详解
最近在研究ASP.NET Core,其中就用到了Entity Framework Core,对于Entity Framework Core连接SqlServer数据库,使用Code Frist创建数据 ...