public override string ToString() { string res = "\n"; res += string.Format("\n{0,-27} {1, -27}\n", "===BIDS===", "===ASKS==="); res += string.Format("\n{0,-8} {1,-7} {2, -10} || {0,-8} {1,-7} {2,-10}\n", "Exchange", "Price", "Amount", ""); using (var bidEnumerator = Bids.GetEnumerator()) using (var askEnumerator = Asks.GetEnumerator()) { var nextBid = bidEnumerator.MoveNext(); var nextAsk = askEnumerator.MoveNext(); while (nextBid || nextAsk) { string nextBidExchange = (nextBid) ? bidEnumerator.Current.ExchangeID.ToString() : ""; string nextBidPrice = (nextBid) ? bidEnumerator.Current.Price.ToString() : ""; string nextBidAmount = (nextBid) ? bidEnumerator.Current.RemainingVolume.ToString("N4") : ""; string nextAskExchange = (nextAsk) ? askEnumerator.Current.ExchangeID.ToString() : ""; string nextAskPrice = (nextAsk) ? askEnumerator.Current.Price.ToString() : ""; string nextAskAmount = (nextAsk) ? askEnumerator.Current.RemainingVolume.ToString("N4") : ""; res += string.Format("\n{0,-8} {1,-7} {2,-10} || {3,-8} {4,-7} {5,-10}\n", nextBidExchange, nextBidPrice, nextBidAmount, nextAskExchange, nextAskPrice, nextAskAmount); nextBid = bidEnumerator.MoveNext(); nextAsk = askEnumerator.MoveNext(); } } return(res); }
internal void Print() { var bidIt = Bids.GetEnumerator(); var askIt = Asks.GetEnumerator(); Console.WriteLine("----------------------"); Console.WriteLine("Bid OrderBook Ask"); Console.WriteLine("----------------------"); bool hasCurrentBid = bidIt.MoveNext(); bool hasCurrentAsk = askIt.MoveNext(); while (hasCurrentBid || hasCurrentAsk) { if (hasCurrentBid && hasCurrentAsk) { var currBid = bidIt.Current; var currAsk = askIt.Current; Console.WriteLine($"{currBid} | {currAsk}"); hasCurrentBid = bidIt.MoveNext(); hasCurrentAsk = askIt.MoveNext(); } else if (hasCurrentBid) { var currBid = bidIt.Current; Console.WriteLine($"{currBid} |"); hasCurrentBid = bidIt.MoveNext(); } else { var currAsk = askIt.Current; Console.WriteLine($" | {currAsk}"); hasCurrentAsk = askIt.MoveNext(); } Console.WriteLine("----------------------"); } }