コード例 #1
0
ファイル: FastSerializer.cs プロジェクト: fntc/Plato.Core
        /// <summary>
        /// Gets the object.
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="ff">The ff.</param>
        /// <param name="additionalInfo">The additional information.</param>
        /// <returns></returns>
        public T GetObject <T>(FastBinaryFormatter ff, object additionalInfo) where T : IFastBinarySerializable
        {
            T value;

            if (ObjectData != null)
            {
                value = ff.Deserialize <T>(ObjectData, additionalInfo);
            }
            else
            {
                value = default(T);
            }

            return(value);
        }
コード例 #2
0
ファイル: FastSerializer.cs プロジェクト: fntc/Plato.Core
        /// <summary>
        /// Deserializes the specified formatter.
        /// </summary>
        /// <param name="formatter">The formatter.</param>
        /// <param name="data">The data.</param>
        /// <returns></returns>
        public static IEnumerable <T> Deserialize(FastBinaryFormatter formatter, byte[] data)
        {
            var serializer = formatter.Deserialize <FastSerializerEnumerable <T> >(data);

            return(serializer.Items);
        }
コード例 #3
0
ファイル: FastSerializer.cs プロジェクト: fntc/Plato.Core
        /// <summary>
        /// Deserializes the specified formatter.
        /// </summary>
        /// <param name="formatter">The formatter.</param>
        /// <param name="stream">The stream.</param>
        /// <returns></returns>
        public static IEnumerable <T> Deserialize(FastBinaryFormatter formatter, Stream stream)
        {
            var serializer = formatter.Deserialize <FastSerializerEnumerable <T> >(stream);

            return(serializer.Items);
        }