RpcQueryResult.cs 648 B

1234567891011121314151617181920212223
  1. using System.Linq;
  2. using InABox.Core;
  3. using Inflector;
  4. namespace InABox.Rpc
  5. {
  6. public class RpcQueryResult : IRpcCommandResult
  7. {
  8. public RpcQueryTable[] Tables { get; set;}
  9. public void SerializeBinary(CoreBinaryWriter writer)
  10. {
  11. writer.WriteBinaryValue(Tables);
  12. }
  13. public void DeserializeBinary(CoreBinaryReader reader)
  14. {
  15. Tables = reader.ReadBinaryValue<RpcQueryTable[]>();
  16. }
  17. public string FullDescription() => $"{string.Join(", ", Tables.Select(x => $"{x.Key}=({x.Table.Rows.Count} Rows / {x.Table.Columns.Count} Columns)"))}";
  18. }
  19. }