Mercurial > hg > Database > Christie-sharp
view Test/RewritingTest/MessagepackTest.cs @ 45:98ee1ee1efb7
error message is change
author | riono <e165729@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 30 Nov 2021 19:34:24 +0900 |
parents | 0cd765be9693 |
children |
line wrap: on
line source
using System; using System.Collections.Generic; using System.Linq; using Christie_net.datagear; using Christie_net.datagear.dg; using Christie_net.Test.Example.RemoteTake; using MessagePack; namespace Christie_net { [MessagePackObject] public class MessagepackTest { [Key("key")] public string key; [Key("foo")] public int foo; [Key("data")] public byte[] data; public MessagepackTest(string key, int foo, byte[] data) { this.key = key; this.foo = foo; this.data = data; } public static void Main() { RTCommand cmd = new RTCommand("line", "cmd", 12); byte[] serializeData = MessagePackSerializer.Serialize(cmd); var message = new MessagepackTest("fuga", 10, serializeData); byte[] slie = MessagePackSerializer.Serialize(message); var desli = MessagePackSerializer.Deserialize<MessagepackTest>(slie); Type dataTypes = typeof(RTCommand); var args = new object[] {"line", "cmd", 12}; var deseriData = MessagePackSerializer.Deserialize<object>(desli.data); Dictionary<dynamic,dynamic> test = (Dictionary<dynamic, dynamic>) deseriData; List<object> array = new List<object>(); foreach (var VARIABLE in test) { array.Add(VARIABLE.Value); } object[] convertArray = array.ToArray(); var instance = Activator.CreateInstance(dataTypes, convertArray); Console.WriteLine("varl;" + instance.GetType()); // byte[] bytes = MessagePackSerializer.Serialize(message); // MessagepackTest mes = MessagePackSerializer.Deserialize<MessagepackTest>(bytes); // // // int data = MessagePackSerializer.Deserialize<int>(mes.data); //Console.WriteLine(data); } } // public class SerializeObj <T> { // // public byte[] SerializeFunc(T data) { // return MessagePackSerializer.Serialize(data); // } // // public object DeserializeFunc(byte[] data) { // return MessagePackSerializer.Deserialize<T>(data); // } // } }