/// <summary> /// 获取类型序列化器 /// </summary> /// <param name="key">需要获取序列化器的名称</param> /// <returns></returns> public static ITypeSerializer GetTypeSerializer(string key) { ITypeSerializer serializer; if (TypeSerializerFactory.TryGetSerializer(key, out serializer)) { return(serializer); } throw Error.NotFindSerializer(key); }
/// <summary> /// /// </summary> /// <param name="type"></param> /// <returns></returns> public static ushort GetTypeCode(Type type) { ushort v; if (TypeSerializerFactory.TryGetSerializerCode(type, out v)) { return(v); } throw Error.NotFindSerializer(type.FullName); }
/// <summary> /// 获取类型序列化器 /// </summary> /// <param name="type">需要序列化的类型</param> /// <returns></returns> public static ITypeSerializer GetTypeSerializer(Type type) { return(TypeSerializerFactory.GetOrCreateTypeSerializer(type)); }
/// <summary> /// 检查指定编码类型是否支持反序列化 /// </summary> /// <param name="typeCode"></param> /// <returns></returns> public static bool CanDeserialize(int typeCode) { ITypeSerializer serializer; return(TypeSerializerFactory.TryGetSerializer(typeCode.ToString(), out serializer)); }
/// <summary> /// /// </summary> /// <param name="typeCode"></param> /// <param name="serializer"></param> /// <returns></returns> public static bool CanDeserialize(int typeCode, out ITypeSerializer serializer) { return(TypeSerializerFactory.TryGetSerializer(typeCode, out serializer)); }