Afifi6897 Ответов: 1

Обновление значения carttotal в C#


В основном я пытаюсь рассчитать налогооблагаемую из корзины общую стоимость, которую получаю из базы данных, но значение не обновляется при отображении в lblTotal.text. Там нет никакой ошибки, так что я не знаю, почему он не обновляется . вот мой код

Что я уже пробовал:

protected void Page_Load(object sender, EventArgs e)
{
    using (ShoppingCartActions usersShoppingCart = new ShoppingCartActions())
    {
        float cartTotal, taxedvalue;
        cartTotal = (float)usersShoppingCart.GetTotal();
        taxedvalue = 6 / 100 * cartTotal;
        cartTotal += taxedvalue;
        if (cartTotal > 0)
        {
            // Display Total.
            lblTotal.Text = String.Format("{0:c}", cartTotal += taxedvalue);
        }
        else
        {
            LabelTotalText.Text = "";
            lblTotal.Text = "";
            ShoppingCartTitle.InnerText = "Shopping Cart is Empty";
            UpdateBtn.Visible = false;
            CheckoutImageBtn.Visible = false;
        }
        
    }
}

Sandeep Mewara

Вы отладили и посмотрели? Будет ли код, Если или еще часть?

1 Ответов

Рейтинг:
0

BillWoodruff

Вы выполняете целочисленное деление перед умножением, поэтому 6 / 100 == 0. Использовать это:

float taxedvalue = (6.0f / 100.0f) * cartTotal;
Примечание: это также будет работать:
float taxedvalue = cartTotal * 6 / 100;
потому что компилятор распознает первый параметр как float и автоматически обрабатывает два целочисленных значения как float, когда он умножается и делится.


Maciej Los

5ed!