Пример #1
0
    private void BindDataToDDL()
    {
        var listPacks = availableOptions;

        var list = new Dictionary <string, string>();

        foreach (PortfolioShare share in listPacks)
        {
            PortfolioProduct Product = share.Product;
            list.Add(share.Id.ToString(), Product.Name + " (" + SharesMarketManager.GetSharesAvailableForSale(share) + " " + Resources.U4000.UNITS + ")");
        }
        ddlOptions.DataSource     = list;
        ddlOptions.DataTextField  = "Value";
        ddlOptions.DataValueField = "Key";
        ddlOptions.DataBind();
    }
Пример #2
0
    protected void BidButton_Click(object sender, EventArgs e)
    {
        ErrPanel.Visible = false;
        SucPanel.Visible = false;

        try
        {
            PortfolioShare share = new PortfolioShare(Convert.ToInt32(ddlOptions.SelectedValue));

            if (share.OwnerUsername == Member.CurrentName) //Anti-fraud check
            {
                Money Amount;

                if (!Money.TryParse(Price.Text, out Amount))
                {
                    throw new MsgException(U3500.ILLEGALCHARS);
                }

                int Units = Convert.ToInt32(UnitsBox.Text);

                Amount = Units * Amount;

                //Availability check
                if (Units > SharesMarketManager.GetSharesAvailableForSale(share))
                {
                    throw new MsgException(U4000.NOTENOUGHUNITS);
                }

                //Sell
                SharesMarketManager.AddShareToMarket(share, Units, Amount);

                SucPanel.Visible = true;
                SucMess.Text     = L1.OP_SUCCESS;
            }
        }
        catch (MsgException ex)
        {
            ErrPanel.Visible = true;
            ErrMess.Text     = ex.Message;
        }
        catch (Exception ex)
        {
            ErrorLogger.Log(ex);
        }
    }