Newtonsoft.Json 序列 反序列 IEnumerable

下面是memcached 中获取的obj 类型的数据,转list

            string sessionId = Request.Cookies["sessionId"].Value;//授权从Cookie中传递过来的Memcache的Key
            Object obj = MemcachedHelper.Get(sessionId);//根据key从Memcache中获取用户的信息

            // 序列化为JSON字串
            string _json = JsonConvert.SerializeObject(obj);
            List<UsersJsonParam> userInfo = new List<UsersJsonParam>();

            // 反序列化
            userInfo = JsonConvert.DeserializeObject<List<UsersJsonParam>>(obj.ToString());

不知为何

ICollection,IEnumerable 转换不行
            ICollection<object> list1 = obj as ICollection<object>;
            IEnumerable<object> list2 = obj as IEnumerable<object>;

obj 转 IEnumerable

 /// <summary>
        /// 这是子页面
        /// </summary>
        /// <returns></returns>
        public ActionResult Edit()
        {
            //----查询 分组 数据列表 开始----
            int Page = Convert.ToInt32(string.IsNullOrWhiteSpace(Request["page"]) ? "1" : Request["page"]);
            int limit = Convert.ToInt32(string.IsNullOrWhiteSpace(Request["limit"]) ? "100" : Request["limit"]);

            Group Group = new Group();

            Group.GroupId = Convert.ToInt32(string.IsNullOrWhiteSpace(Request["GroupId"]) ? "0" : Request["GroupId"]);
            Group.GroupCode = string.IsNullOrWhiteSpace(Request["GroupCode"]) ? "" : Request["GroupCode"];
            Group.GroupName = string.IsNullOrWhiteSpace(Request["GroupName"]) ? "" : Request["GroupName"];

            JsonResultDapper jrd = GroupManager.SelectGroupList(Group, Page, limit);

            //----查询 分组 数据列表 结束----

            var selectItemList = new List<SelectListItem>() {
                new SelectListItem(){ Value="0", Text="--全部--", Selected=true }
            };

            IEnumerable<object> list = jrd.rows as IEnumerable<object>;
            var GroupList = new SelectList(list, "GroupId", "GroupName");

            selectItemList.AddRange(GroupList);
            ViewBag.database = selectItemList;

            return PartialView();
        }
时间: 2024-08-25 18:59:00

Newtonsoft.Json 序列 反序列 IEnumerable的相关文章

分享基于.NET动态编译&amp;Newtonsoft.Json封装实现JSON转换器(JsonConverter)原理及JSON操作技巧

原文:分享基于.NET动态编译&Newtonsoft.Json封装实现JSON转换器(JsonConverter)原理及JSON操作技巧 看文章标题就知道,本文的主题就是关于JSON,JSON转换器(JsonConverter)具有将C#定义的类源代码直接转换成对应的JSON字符串,以及将JSON字符串转换成对应的C#定义的类源代码,而JSON操作技巧则说明如何通过JPath来快速的定位JSON的属性节点从而达到灵活读写JSON目的. 一.JSON转换器(JsonConverter)使用及原理介

Newtonsoft.Json序列化和反序列

这里下载:http://www.newtonsoft.com/products/json/安装:   1.解压下载文件,得到Newtonsoft.Json.dll   2.在项目中添加引用.. 序列化和反序列在.net项目中: Product product = new Product();   product.Name = "Apple"; product.Expiry = new DateTime(2008, 12, 28); product.Price = 3.99M; prod

(转)Newtonsoft.Json序列化和反序列

这里下载:http://www.newtonsoft.com/products/json/安装:   1.解压下载文件,得到Newtonsoft.Json.dll   2.在项目中添加引用.. 序列化和反序列在.net项目中: Product product = new Product();   product.Name = "Apple"; product.Expiry = new DateTime(2008, 12, 28); product.Price = 3.99M; prod

Newtonsoft.Json序列化和反序列之javascriptConvert.SerializeObject,DeserializeObject,JsonWriter,JsonReader

这里下载:http://www.newtonsoft.com/products/json/安装:   1.解压下载文件,得到Newtonsoft.Json.dll   2.在项目中添加引用.. javascriptConvert.SerializeObject 序列化和反序列在.net项目中: Product product = new Product();  product.Name = "Apple"; product.Expiry = new DateTime(2008, 12,

.Net使用Newtonsoft.Json.dll(JSON.NET)对象序列化成json、反序列化json示例教程

JSON作为一种轻量级的数据交换格式,简单灵活,被很多系统用来数据交互,作为一名.NET开发人员,JSON.NET无疑是最好的序列化框架,支持XML和JSON序列化,高性能,免费开源,支持LINQ查询.目前已被微软集成于webapi框架之中,因此,熟练掌握JSON.NET相当重要,这篇文章是零度参考官网整理的示例,通过这些示例,可以全面了解JSON.NET提供的功能. Newtonsoft.Json的地址: 官网:http://json.codeplex.com/ 源码地址:https://gi

[.net 面向对象程序设计进阶] (13) 序列化(Serialization)(五) JSON序列化利器 Newtonsoft.Json 及 通用Json类

[.net 面向对象程序设计进阶] (13) 序列化(Serialization)(五) JSON序列化利器 Newtonsoft.Json 及 通用Json类 本节导读: 关于JSON序列化,不能不了解Json.net(Newtonsoft.Json)这款世界级的开源类库,除了拥有良好的性能之外,功能也是非常强大的. 本节会详细说明这个类库.此外,对于不喜欢使用第三方类库的同学,会整理一个基于微软类库的通用Json类. 读前必备: 本节主要介绍一款第三方类库和一个自己整理封装的类库,说起到封装

使用Newtonsoft.Json.dll(JSON.NET)动态解析JSON、.net 的json的序列化与反序列化(一)

在开发中,我非常喜欢动态语言和匿名对象带来的方便,JSON.NET具有动态序列化和反序列化任意JSON内容的能力,不必将它映射到具体的强类型对象,它可以处理不确定的类型(集合.字典.动态对象和匿名对象),在这篇文章中我将通过JToken.JObject和JArray来动态解析JSON对象,使它很容易创建和检索的JSON内容而无需基础类型.通过JObject和JArray创建JSON对象我们先用非常简单的方法来动态创建一些JSON,可通过JToken派生的JSON.NET对象来进行,最常见的JTo

Asp.Net中使用Newtonsoft.Json转换,读取,写入

using Newtonsoft.Json; using Newtonsoft.Json.Converters; //把Json字符串反序列化为对象 目标对象 = JsonConvert.DeserializeObject(JSON字符串, typeof(目标对象)); //把目标对象序列化为Json字符串 string Json字符串 = JsonConvert.SerializeObject(目标对象); 1.引用Newtonsoft.Json.dll 2.在项目中添加引用.. 序列化和反序

Newtonsoft.Json 基本用法

Newtonsoft.Json 是.net 开源的一个json格式处理类库 官方网站:http://json.codeplex.com/ 在使用的项目引用Newtonsoft.Json库.平常使用的方法有序列化与反序列方法 1 序列化:把一个对象序列化成json格式的字符串 V_BBSTopic_User entity = db.GetTEntity<V_BBSTopic_User>(sql); if (entity != null) { string json = JsonConvert.S