internal static ChartQuotationCollection Create(DataSet dataSet, string dataCycle, string dateFormat) { var result = new ChartQuotationCollection(); DataRow[] rows = dataSet.Tables[0].Select(null, "Date"); foreach (ChartQuotation chartQuotation in rows.Select(row => ChartQuotation.Create(row, dateFormat))) { result.Add(chartQuotation); } result.DataCycle = dataCycle; return result; }
internal static ChartQuotationCollection Create(DataSet dataSet, string dataCycle, string dateFormat) { var result = new ChartQuotationCollection(); DataRow[] rows = dataSet.Tables[0].Select(null, "Date"); foreach (ChartQuotation chartQuotation in rows.Select(row => ChartQuotation.Create(row, dateFormat))) { result.Add(chartQuotation); } result.DataCycle = dataCycle; return(result); }
private static void CreateChartData2ForMobile(object state) { ChartDataArgument2 chartDataArgument = (ChartDataArgument2)state; try { TradingConsoleState tradingConsoleState = chartDataArgument.TradingConsoleState; Guid quotePolicyId = (Guid)tradingConsoleState.Instruments[chartDataArgument.InstrumentId]; TradingConsoleServer tradingConsoleServer = chartDataArgument.TradingConsoleServer; //DataSet dataSet = tradingConsoleServer.GetChartData2(chartDataArgument.InstrumentId, quotePolicyId, chartDataArgument.DataCycle, chartDataArgument.From, chartDataArgument.To); string dataCycle = chartDataArgument.DataCycle.ToLower(); string dateFormat = ChartQuotation.FormatMinute; //DataSet dataSet = DataAccess.GetChartData(instrumentId, quotePolicyId, dataCycle, fromTime.Value, toTime, commandTimeOut); DataSet dataSet = tradingConsoleServer.GetChartData2(chartDataArgument.InstrumentId, quotePolicyId, chartDataArgument.DataCycle, chartDataArgument.From, chartDataArgument.To); ChartQuotationCollection chartQuotationCollection = ChartQuotationCollection.Create(dataSet, dataCycle, dateFormat); DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(ChartQuotationCollection)); string result; using (MemoryStream stream = new MemoryStream()) { serializer.WriteObject(stream, chartQuotationCollection); stream.Seek(0, SeekOrigin.Begin); StreamReader streamReader = new StreamReader(stream); result = streamReader.ReadToEnd(); } AsyncResultManager asyncResultManager = chartDataArgument.AsyncResultManager; XElement element = XmlResultHelper.NewResult("ChartData", result); asyncResultManager.SetResult(chartDataArgument.AsyncResult, element); AsyncCommand command = new AsyncCommand(0, chartDataArgument.AsyncResult); command.Content = element.ToXmlNode(); CommandManager.Default.AddCommand(command); } catch (Exception e) { _Logger.Error(e); CommandManager.Default.AddCommand(new AsyncCommand(0, chartDataArgument.AsyncResult, true, e)); } }