public static XQt1471OutBlock FromQuery(XQt1471 query) { XQt1471OutBlock block = new XQt1471OutBlock(); block.IsValidData = true; block.InvalidReason = ""; if (query.QueryResult != null && query.QueryResult.IsSystemError == true) { block.IsValidData = false; block.InvalidReason = query.ReceiveMessage; return(block); } try { block.time = query.GetFieldData(block.GetBlockName(), "time", 0).TrimEnd('?'); // char 6 block.price = query.GetFieldData(block.GetBlockName(), "price", 0).ParseLong("price"); // long 8 block.sign = query.GetFieldData(block.GetBlockName(), "sign", 0).FirstOrDefault(); // char 1 block.change = query.GetFieldData(block.GetBlockName(), "change", 0).ParseLong("change"); // long 8 block.diff = query.GetFieldData(block.GetBlockName(), "diff", 0).ParseFloat("diff"); // float 6.2 block.volume = query.GetFieldData(block.GetBlockName(), "volume", 0).ParseLong("volume"); // long 12 } catch (InvalidDataFormatException e) { block.IsValidData = false; block.InvalidReason = $"FieldName == {e.DataFieldName}, FieldData == \"{e.DataValue}\""; } return(block); }
public XQt1471OutBlock GetBlock() { XQt1471OutBlock instance = XQt1471OutBlock.FromQuery(this); return(instance); }