public static XQt3521OutBlock FromQuery(XQt3521 query) { XQt3521OutBlock block = new XQt3521OutBlock(); block.IsValidData = true; block.InvalidReason = ""; if (query.QueryResult != null && query.QueryResult.IsSystemError == true) { block.IsValidData = false; block.InvalidReason = query.ReceiveMessage; return(block); } try { block.symbol = query.GetFieldData(block.GetBlockName(), "symbol", 0).TrimEnd('?'); // char 16 block.hname = query.GetFieldData(block.GetBlockName(), "hname", 0).TrimEnd('?'); // char 20 block.close = query.GetFieldData(block.GetBlockName(), "close", 0).ParseFloat("close"); // float 12.2 block.sign = query.GetFieldData(block.GetBlockName(), "sign", 0).FirstOrDefault(); // char 1 block.change = query.GetFieldData(block.GetBlockName(), "change", 0).ParseFloat("change"); // float 6.2 block.diff = query.GetFieldData(block.GetBlockName(), "diff", 0).ParseFloat("diff"); // float 6.2 block.date = query.GetFieldData(block.GetBlockName(), "date", 0).TrimEnd('?'); // char 8 } catch (InvalidDataFormatException e) { block.IsValidData = false; block.InvalidReason = $"FieldName == {e.DataFieldName}, FieldData == \"{e.DataValue}\""; } return(block); }
public XQt3521OutBlock GetBlock() { XQt3521OutBlock instance = XQt3521OutBlock.FromQuery(this); return(instance); }