Ejemplo n.º 1
0
 public PortfolioDomainModel GetPortfolioDomainModel(Portfolio portfolio)
 {
     IEnumerable<string> symbols = portfolio.PortfolioAssets.Select(a => a.AssetSymbol);
     List<Stock> stocks = _context.Stock
         .Where(s => symbols.Contains(s.Symbol)).ToList();
     List<StockDomainModel> stockDomainModels = new List<StockDomainModel>();
     Parallel.For(0, stocks.Count(), i =>
     {
         int amountOwned = portfolio.PortfolioAssets.Single(a => a.AssetSymbol == stocks[i].Symbol).NumberOfAssetOwned;
         stockDomainModels.Add(new StockDomainModel(stocks[i], amountOwned));
     });
     PortfolioDomainModel output = new PortfolioDomainModel(stockDomainModels, portfolio);
     return output;
 }
Ejemplo n.º 2
0
        public PortfolioViewModel GetPortfolioViewModel(PortfolioDomainModel portfolioDomainModel)
        {
            string expectedReturn;
            if (((portfolioDomainModel.ExpectedReturn)*100M).ToString().Length > 3)
            {
                expectedReturn = ((portfolioDomainModel.ExpectedReturn)*100M).ToString().Substring(0, 4);
            }
            else
            {
                expectedReturn = ((portfolioDomainModel.ExpectedReturn)*100M).ToString();
            }

            PortfolioViewModel portfolioViewModel = new PortfolioViewModel {
                ID = portfolioDomainModel.ID,
                Name = portfolioDomainModel.Name,
                DateCreated = portfolioDomainModel.DateCreated,
                ExpectedReturnString = string.Format("{0}%", expectedReturn),
                ExpectedReturnDouble = (double)portfolioDomainModel.ExpectedReturn,
                Variance = portfolioDomainModel.Variance,
                DollarValue = portfolioDomainModel.DollarValue
            };
            portfolioViewModel.Stocks = (GetStockViewModels(portfolioDomainModel.Stocks));
            return portfolioViewModel;
        }