public static XQt1442OutBlock1[] ListFromQuery(XQt1442 query) { int count = query.GetBlockCount(XQt1442OutBlock1.BlockName); List <XQt1442OutBlock1> list = new List <XQt1442OutBlock1>(); if (query.QueryResult != null && query.QueryResult.IsSystemError == true) { return(list.ToArray()); } for (int i = 0; i < count; i++) { XQt1442OutBlock1 block = new XQt1442OutBlock1(); block.IsValidData = true; block.InvalidReason = ""; try { block.shcode = query.GetFieldData(block.GetBlockName(), "shcode", i).TrimEnd('?'); // char 6 block.hname = query.GetFieldData(block.GetBlockName(), "hname", i).TrimEnd('?'); // char 20 block.price = query.GetFieldData(block.GetBlockName(), "price", i).ParseLong("price"); // long 8 block.sign = query.GetFieldData(block.GetBlockName(), "sign", i).FirstOrDefault(); // char 1 block.change = query.GetFieldData(block.GetBlockName(), "change", i).ParseLong("change"); // long 8 block.diff = query.GetFieldData(block.GetBlockName(), "diff", i).ParseFloat("diff"); // float 6.2 block.volume = query.GetFieldData(block.GetBlockName(), "volume", i).ParseLong("volume"); // long 12 block.pastprice = query.GetFieldData(block.GetBlockName(), "pastprice", i).ParseLong("pastprice"); // long 8 block.pastsign = query.GetFieldData(block.GetBlockName(), "pastsign", i).FirstOrDefault(); // char 1 block.pastchange = query.GetFieldData(block.GetBlockName(), "pastchange", i).ParseLong("pastchange"); // long 8 block.pastdiff = query.GetFieldData(block.GetBlockName(), "pastdiff", i).ParseFloat("pastdiff"); // float 6.2 } catch (InvalidDataFormatException e) { block.IsValidData = false; block.InvalidReason = $"FieldName == {e.DataFieldName}, FieldData == \"{e.DataValue}\""; } list.Add(block); } return(list.ToArray()); }
public XQt1442OutBlock1[] GetBlock1s() { XQt1442OutBlock1[] instance = XQt1442OutBlock1.ListFromQuery(this); return(instance); }