Пример #1
0
        public static XQt1422OutBlock1[] ListFromQuery(XQt1422 query)
        {
            int count = query.GetBlockCount(XQt1422OutBlock1.BlockName);
            List <XQt1422OutBlock1> list = new List <XQt1422OutBlock1>();

            if (query.QueryResult != null && query.QueryResult.IsSystemError == true)
            {
                return(list.ToArray());
            }
            for (int i = 0; i < count; i++)
            {
                XQt1422OutBlock1 block = new XQt1422OutBlock1();
                block.IsValidData   = true;
                block.InvalidReason = "";
                try
                {
                    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.diff_vol   = query.GetFieldData(block.GetBlockName(), "diff_vol", i).ParseFloat("diff_vol");    // float 10.2
                    block.offerrem1  = query.GetFieldData(block.GetBlockName(), "offerrem1", i).ParseLong("offerrem1");   // long 12
                    block.bidrem1    = query.GetFieldData(block.GetBlockName(), "bidrem1", i).ParseLong("bidrem1");       // long 12
                    block.last       = query.GetFieldData(block.GetBlockName(), "last", i).TrimEnd('?');                  // char 6
                    block.lmtdaycnt  = query.GetFieldData(block.GetBlockName(), "lmtdaycnt", i).ParseLong("lmtdaycnt");   // long 8
                    block.jnilvolume = query.GetFieldData(block.GetBlockName(), "jnilvolume", i).ParseLong("jnilvolume"); // long 12
                    block.shcode     = query.GetFieldData(block.GetBlockName(), "shcode", i).TrimEnd('?');                // char 6
                } catch (InvalidDataFormatException e) {
                    block.IsValidData   = false;
                    block.InvalidReason = $"FieldName == {e.DataFieldName}, FieldData == \"{e.DataValue}\"";
                }
                list.Add(block);
            }
            return(list.ToArray());
        }
Пример #2
0
 public XQt1422OutBlock1[] GetBlock1s()
 {
     XQt1422OutBlock1[] instance = XQt1422OutBlock1.ListFromQuery(this);
     return(instance);
 }