固始二手房,包皮过长治疗,成都理工大学广播影视学院贴吧
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。
首先,我们来看一下一个C#的类变量数据是怎么从后端C#走向前端Javascript的。
源码如下:
(C#对象 ==> json字符串)
/// <summary> /// Json字符转换的配置对象,设置了基本Json配置的信息 /// </summary> private static readonly JsonSerializerSettings Settings = new JsonSerializerSettings { //忽略循环引用,如果设置为Error,则遇到循环引用的时候报错(建议设置为Error,这样更规范) ReferenceLoopHandling = ReferenceLoopHandling.Ignore, //日期格式化,默认的格式也不好看 DateFormatString = "yyyy-MM-dd HH:mm:ss", //json中属性开头字母小写的驼峰命名 ContractResolver = new Newtonsoft.Json.Serialization.CamelCasePropertyNamesContractResolver() }; //根据配置规则得到json转换类 private static JsonSerializer scriptSerializer = JsonSerializer.Create(Settings); /// <summary> /// 将任意一个对象转换为json字符串的表示形式 /// </summary> /// <param name="obj">要转换成json字符串的对象</param> /// <returns>转换后的json字符串,失败则返回null</returns> public static string ConvertToJsonStr(object obj) { try { StringWriter stringWriter = new StringWriter(); scriptSerializer.Serialize(stringWriter, obj); return stringWriter.ToString(); } catch { return null; } }
(json字符串 ==> javascript对象)
var obj = JSON.parse('{"a": "Hello", "b": "World"}'); //结果是 {a: 'Hello', b: 'World'}
然后,再反过来看一下一个Javascript的变量数据又是怎么一步步走向C#后端的。
源码如下:
(json字符串 ==> c#对象)
/// <summary> /// 将json字符串转换成对象 /// </summary> /// <typeparam name="T">要转换成的类型</typeparam> /// <param name="jsonStr">json字符串</param> /// <returns>成功转换返回对象,否则返回null</returns> public static T JsonStrToObject<T>(string jsonStr) { try { JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer(); return javaScriptSerializer.Deserialize<T>(jsonStr); } catch { return default(T); } }
(javascript对象 ==> json字符串)
var json = JSON.stringify({a: 'Hello', b: 'World'}); //结果是 '{"a": "Hello", "b": "World"}'
补充:
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
Blazor server side 自家的一些开源的, 实用型项目的进度之 CEF客户端
.NET IoC模式依赖反转(DIP)、控制反转(Ioc)、依赖注入(DI)
vue+.netcore可支持业务代码扩展的开发框架 VOL.Vue 2.0版本发布
网友评论