/// <summary>AMF序列化byte数组</summary> public static byte[] AMF_Serializer(object obj) { FluorineFx.AMF3.ByteArray byteArray = new FluorineFx.AMF3.ByteArray(); byteArray.WriteObject(obj); byte[] buffer = new byte[byteArray.Length]; byteArray.Position = 0; byteArray.ReadBytes(buffer, 0, byteArray.Length); return(buffer); }
/// <summary>AMF序列化为对象</summary> public static T AMF_Deserializer <T>(byte[] buffer, int length) { var stream = new MemoryStream(buffer, 0, length); var byteArray = new FluorineFx.AMF3.ByteArray(stream); var asobj = (ASObject)byteArray.ReadObject(); var obj = AmfEntityConvert.ConvertEntity(asobj, typeof(T)); if (obj == null) { return(default(T)); } return((T)obj); }