コード例 #1
0
        // Convert command binary to command enum
        public static MovieCommandEnum.MovieCommand BinaryToCommandEnum(byte[] commandBinary)
        {
            MovieCommandEnum.MovieCommand command = MovieCommandEnum.MovieCommand.None;
            if (commandBinary == null)
            {
                return(MovieCommandEnum.MovieCommand.None);
            }

            BinaryFormatter binaryFormatter = new BinaryFormatter();

            using (MemoryStream memoryStream = new MemoryStream(commandBinary))
            {
                try
                {
                    memoryStream.Position = 0;
                    command = (MovieCommandEnum.MovieCommand)binaryFormatter.Deserialize(memoryStream);

                    return(command);
                }
                catch (Exception ex)
                {
                    LoggerService.Instance.Loggers.Add(new Logger {
                        Id = LoggerService.Instance.LastId + 1, Message = "Hiba a kiválasztott parancs fogadása közben:" + Environment.NewLine + ex.Message, Sender = Sender.SocketServer, LogDate = DateTime.Now
                    });
                    return(command);
                }
            }

            //int commandInt = BitConverter.ToInt32(commandBinary, 0);
            //MovieCommandEnum.MovieCommand commandEnum = (MovieCommandEnum.MovieCommand)Enum.ToObject(typeof(MovieCommandEnum.MovieCommand), commandInt);
        }
コード例 #2
0
        private string getDescription(MovieCommandEnum.MovieCommand movieCommand)
        {
            FieldInfo fieldInfo = movieCommand.GetType().GetField(movieCommand.ToString());

            if (fieldInfo != null)
            {
                var attributes = (DescriptionAttribute[])fieldInfo.GetCustomAttributes(typeof(DescriptionAttribute), false);
                return(((attributes.Length > 0) && (!String.IsNullOrEmpty(attributes[0].Description))) ? attributes[0].Description : movieCommand.ToString());
            }
            else
            {
                return(movieCommand.ToString());
            }
        }