当前位置: 首页 > wzjs >正文

同仁微网站建设工作室淘宝网官方网站

同仁微网站建设工作室,淘宝网官方网站,iphone做网站服务器,室内设计效果图大全动态反序列化 当调用 MessagePackSerializer.Deserialize<object> 或 MessagePackSerializer.Deserialize<dynamic> 时&#xff0c;二进制数据中存在的任何值都将被转换为基本值&#xff0c;即 bool、char、sbyte、byte、short、int、long、ushort、uint、ulong、…

动态反序列化

当调用 `MessagePackSerializer.Deserialize<object>` 或 `MessagePackSerializer.Deserialize<dynamic>` 时,二进制数据中存在的任何值都将被转换为基本值,即 bool、char、sbyte、byte、short、int、long、ushort、uint、ulong、float、double、DateTime、string、byte[]、object[]、IDictionary<object, object>。

/****************************************************文件:Test_06.cs作者:Edision日期:#CreateTime#功能:示例6:动态反序列化
*****************************************************/using MessagePack;
using MessagePack.Resolvers;
using UnityEngine;public class Test_06 : MonoBehaviour
{public void Test(){// 示例数据.var model = new DynamicModel { Name = "foobar", Items = new[] { 1, 10, 100, 1000 } };var blob = MessagePackSerializer.Serialize(model, ContractlessStandardResolver.Options);使用dynamic类型进行反序列化时,Unity环境未能正确处理C#的动态特性。//var deserializedModel = MessagePackSerializer.Deserialize<dynamic>(blob, ContractlessStandardResolver.Options);//Debug.Log(deserializedModel["Name"]); // foobar//Debug.Log(deserializedModel["Items"][2]); // 100// 使用具体类型进行反序列化.var deserializedModel = MessagePackSerializer.Deserialize<DynamicModel>(blob, MessagePack.Resolvers.ContractlessStandardResolver.Options);Debug.Log(deserializedModel.Name); // 输出: foobarDebug.Log(deserializedModel.Items[2]); // 输出: 100}[MessagePackObject]public class DynamicModel{[Key(0)]public string Name { get; set; }[Key(1)]public int[] Items { get; set; }public DynamicModel(){// 默认构造函数}public DynamicModel(string name, int[] items){Name = name;Items = items;}public override string ToString(){return $"Name: {Name}, Items: [{string.Join(", ", Items)}]";}}
}

Object 类型 序列化

StandardResolver 和 ContractlessStandardResolver 可以序列化对象/匿名类型对象。

/****************************************************文件:Test_06.cs作者:Edision日期:#CreateTime#功能:示例6:动态反序列化
*****************************************************/using MessagePack;
using MessagePack.Resolvers;
using UnityEngine;public class Test_06 : MonoBehaviour
{public void Test(){// 示例数据.var model = new DynamicModel { Name = "foobar", Items = new[] { 1, 10, 100, 1000 } };var blob = MessagePackSerializer.Serialize(model, ContractlessStandardResolver.Options);使用dynamic类型进行反序列化时,Unity环境未能正确处理C#的动态特性。//var deserializedModel = MessagePackSerializer.Deserialize<dynamic>(blob, ContractlessStandardResolver.Options);//Debug.Log(deserializedModel["Name"]); // foobar//Debug.Log(deserializedModel["Items"][2]); // 100// 使用具体类型进行反序列化.var deserializedModel = MessagePackSerializer.Deserialize<DynamicModel>(blob, ContractlessStandardResolver.Options);Debug.Log(deserializedModel.Name); // 输出: foobarDebug.Log(deserializedModel.Items[2]); // 输出: 100var objects = new object[] { 1, "aaa", new ObjectFieldType { Anything = 9999 } };var bin = MessagePackSerializer.Serialize(objects);// [1,"aaa",[9999]]Debug.Log(MessagePackSerializer.ConvertToJson(bin));// Support anonymous Type Serializevar anonType = new { Foo = 100, Bar = "foobar" };var bin2 = MessagePackSerializer.Serialize(anonType, ContractlessStandardResolverAllowPrivate.Options);// {"Foo":100,"Bar":"foobar"}Debug.Log(MessagePackSerializer.ConvertToJson(bin2));}[MessagePackObject]public class DynamicModel{[Key(0)]public string Name { get; set; }[Key(1)]public int[] Items { get; set; }public DynamicModel(){// 默认构造函数}public DynamicModel(string name, int[] items){Name = name;Items = items;}public override string ToString(){return $"Name: {Name}, Items: [{string.Join(", ", Items)}]";}}[MessagePackObject]public class ObjectFieldType{[Key(0)]public int Anything { get; set; }public ObjectFieldType(){// 默认构造函数}public ObjectFieldType(int anything){Anything = anything;}public override string ToString(){return $"Anything: {Anything}";}}
}

在反序列化时,与动态(未类型化)反序列化相同。

http://www.dtcms.com/wzjs/321061.html

相关文章:

  • 房地产企业网站建设网络营销策划公司
  • 无锡品牌网站建设武汉网络推广网络营销
  • 做关于网站的开题报告百度资源搜索引擎
  • 哪些外贸网站可以做soho网络推广方法怎么样
  • 做网站怎么每天更新内容天津谷歌优化
  • 海口网站建设方案推广怎么推广一个平台
  • avian wordpress惠州seo网络推广
  • 专业云南做网站网站发布与推广方式
  • 哪个网站做h5比较好推广方案的内容有哪些
  • 企业网站建设策划书标准版搜狗搜索网
  • 做网站必须用tomcat留号码的广告网站
  • 网站建设 简单动态网站搭建成都网站建设公司排名
  • 网站建设要做原型图吗竞价推广代运营
  • 网站建设排行榜seo变现培训
  • 驻马店重点项目建设网站手机百度一下百度
  • 微信商城和微网站建设百度app
  • 网站制作 沈阳腾讯推广平台
  • 选择邯郸网站制作网站设计平台
  • 建设通网站联系电话seo自动排名软件
  • 外贸网站seo优化方案湖南seo网站开发
  • 北京网站建设首页2023半夜免费b站推广
  • 西安网站建设中企建站营销网站设计
  • 企业做网站要注意些什么问题东莞网络营销网络推广系统
  • 企业网站备案注销武汉seo 网络推广
  • 小程序游戏排行榜2023福州seo经理招聘
  • 做网站如何挣钱百度广告推广费用
  • 免费自己创建个人网站网站流量统计分析工具
  • 怎么建设网站手机网站制作价格网络营销公司排名
  • 长春建设集团招聘信息网站营销网站建设选择原则
  • 网站后端做留言板功能做推广怎么做