| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- using System;
- namespace SWRIS.Models
- {
- public class LiveStreamDataModel
- {
- /// <summary>
- /// 传感器数量
- /// </summary>
- public byte SensorCount { get; set; }
- /// <summary>
- /// 采样点数
- /// </summary>
- public ushort SampleCount { get; set; }
- /// <summary>
- /// 采样数据
- /// </summary>
- public ushort[][] Data { get; set; }
- public override string ToString()
- {
- // 创建一个字符串构建器来高效拼接字符串
- var sb = new System.Text.StringBuilder();
- // 添加类名
- sb.Append(nameof(LiveStreamDataModel));
- sb.Append(" { ");
- // 添加基本属性
- sb.Append("SensorCount = ").Append(SensorCount);
- sb.Append(", SampleCount = ").Append(SampleCount);
- // 添加数据摘要(如果Data不为空)
- if (Data != null && Data.Length > 0)
- {
- sb.Append(", Data = [ ");
- // 计算要显示的传感器数量(最多显示3个,避免输出过长)
- int sensorsToShow = Math.Min(Data.Length, 3);
- for (int i = 0; i < sensorsToShow; i++)
- {
- sb.Append("[");
- if (Data[i] != null && Data[i].Length > 0)
- {
- // 计算要显示的采样点数量(最多显示5个)
- int samplesToShow = Math.Min(Data[i].Length, 5);
- for (int j = 0; j < samplesToShow; j++)
- {
- sb.Append(Data[i][j]);
- if (j < samplesToShow - 1)
- sb.Append(", ");
- }
- // 如果采样点超过显示数量,添加省略号
- if (Data[i].Length > 5)
- sb.Append(", ...");
- }
- sb.Append("]");
- if (i < sensorsToShow - 1)
- sb.Append(", ");
- }
- // 如果传感器数量超过显示数量,添加省略号
- if (Data.Length > 3)
- sb.Append(", ...");
- sb.Append(" ]");
- }
- else
- {
- sb.Append(", Data = null");
- }
- sb.Append(" }");
- return sb.ToString();
- }
- }
- }
|