protected void Page_Load(object sender, EventArgs e)
 {
     _currencies = Global.Currencies;
     if (!IsPostBack)
     {
         var keys = _currencies.Keys.ToList();
         SourceCurrency.DataSource = keys;
         SourceCurrency.DataBind();
         DestinationCurrency.DataSource = keys;
         DestinationCurrency.DataBind();
         SourceCourse.Text = _currencies[SourceCurrency.SelectedValue];
         SourceCourse.DataBind();
         DestinationCourse.Text = _currencies[DestinationCurrency.SelectedValue];
         DestinationCourse.DataBind();
     }
 }
Exemple #2
0
        public override string Check(Dictionary <Currency, decimal> balances, Dictionary <MarketKey, MarketSummary> markets)
        {
            var summary        = markets[SourceCurrency | DestinationCurrency];
            var conversionRate = summary.Right == SourceCurrency ? summary.Last : (1 / summary.Last);

            balances.TryGetValue(SourceCurrency, out var sourceBalance);
            balances.TryGetValue(DestinationCurrency, out var destinationBalance);
            var convertedBalance = destinationBalance + conversionRate * sourceBalance;

            if (Comparison == Comparison.GreaterThan ? convertedBalance > Threshold : convertedBalance < Threshold)
            {
                var sc  = SourceCurrency.ToString();
                var dc  = DestinationCurrency.ToString();
                var dir = Comparison == Comparison.GreaterThan ? "greater than" : "less than";
                return($"If you converted {sc} to {dc}, you would have roughly {convertedBalance:G6} {dc}, which is {dir} your threshold of {Threshold} {dc}.");
            }
            return(null);
        }