Microsoft.AspNet.SignalR.Redis.RedisMessage.ToBytes C# (CSharp) Method

ToBytes() public static method

public static ToBytes ( IList messages ) : byte[]
messages IList
return byte[]
        public static byte[] ToBytes(IList<Message> messages)
        {
            if (messages == null)
            {
                throw new ArgumentNullException("messages");
            }

            using (var ms = new MemoryStream())
            {
                var binaryWriter = new BinaryWriter(ms);

                var scaleoutMessage = new ScaleoutMessage(messages);
                var buffer = scaleoutMessage.ToBytes();

                binaryWriter.Write(buffer.Length);
                binaryWriter.Write(buffer);

                return ms.ToArray();
            }
        }

Usage Example

 protected override Task Send(int streamIndex, IList <Message> messages)
 {
     return(_connection.ScriptEvaluateAsync(
                _db,
                @"local newId = redis.call('INCR', KEYS[1])
           local payload = newId .. ' ' .. ARGV[1]
           redis.call('PUBLISH', KEYS[1], payload)
           return {newId, ARGV[1], payload}",
                _key,
                RedisMessage.ToBytes(messages)));
 }
All Usage Examples Of Microsoft.AspNet.SignalR.Redis.RedisMessage::ToBytes