Ejemplo n.º 1
0
        // TODO: avoid this readunderlyings in here. do it somewhere else
        private IEnumerable <string> ReadUnderlyings(StatementBuilder.WikifolioItem wikifolioItemStatementBuilder)
        {
            var sqlReader = new SqlDataReader();

            foreach (var row in sqlReader.GetRows(wikifolioItemStatementBuilder.GetUnderlyingsQueryStatement()).Distinct())
            {
                yield return((string)row[row.Keys.First()]);
            }
        }
Ejemplo n.º 2
0
        public WikifolioItemBuildingPlan(Guid wikifolioGuid, bool createUnderlyings = true)
        {
            var wikifolioItemStatementBuilder =
                new StatementBuilder.WikifolioItem(wikifolioGuid);

            this.statementBuilders = new List <IStatementBuilder>()
            {
                wikifolioItemStatementBuilder
            };
            if (createUnderlyings)
            {
                foreach (var underlyingIsin in this.ReadUnderlyings(wikifolioItemStatementBuilder))
                {
                    this.statementBuilders.Insert(0, new StatementBuilder.Underlying(underlyingIsin));
                }
            }
        }