У меня есть текстовое поле, которое позволяет пользователям вводить десятичные значения, которые затем сохраняются в таблице в базе данных, эта часть кода работает в среде разработки. Теперь я опубликовал свой проект на сервере, и теперь он больше не принимает значения с десятичными знаками.Код не преобразовывается текст
decimal ReceiptAmount;
decimal AmountDue;
decimal Change;
if (!string.IsNullOrEmpty(((TextBox)dl_Item.FindControl("tb_ReceiptAmount")).Text))
{
if (((TextBox)dl_Item.FindControl("tb_ReceiptAmount")).Text.Contains(".") == true)
{
ReceiptAmount = Convert.ToDecimal(((TextBox)dl_Item.FindControl("tb_ReceiptAmount")).Text.Replace(".", ","));
}
else
{
ReceiptAmount = Convert.ToDecimal(((TextBox)dl_Item.FindControl("tb_ReceiptAmount")).Text);
}
}
else
{
ReceiptAmount = 0;
}
if (!string.IsNullOrEmpty(((TextBox)dl_Item.FindControl("tb_AmountDue")).Text))
{
if (((TextBox)dl_Item.FindControl("tb_AmountDue")).Text.Contains(".") == true)
{
AmountDue = Convert.ToDecimal(((TextBox)dl_Item.FindControl("tb_AmountDue")).Text.Replace(".", ","));
}
else
{
AmountDue = Convert.ToDecimal(((TextBox)dl_Item.FindControl("tb_AmountDue")).Text);
}
}
else
{
AmountDue = 0;
}
if (!string.IsNullOrEmpty(((TextBox)dl_Item.FindControl("tb_Change")).Text))
{
if (((TextBox)dl_Item.FindControl("tb_Change")).Text.Contains(".") == true)
{
Change = Convert.ToDecimal(((TextBox)dl_Item.FindControl("tb_Change")).Text.Replace(".", ","));
}
else
{
Change = Convert.ToDecimal(((TextBox)dl_Item.FindControl("tb_Change")).Text);
}
}
else
{
Change = 0;
}
Я не уверен, что это проблема с этим фрагментом кода. Текстовое поле найдено в datalist, который я прокручиваю, чтобы получить все значения.
доброжелательно выровняйте свой код –
Мои глаза так сильно болели – kevintjuh93
Вы, кажется, много изменяете культуру, меняя десятичный разделитель, вместо этого вы должны просто разбирать его в любой культуре, в которой вы нуждаетесь. Что касается вашего фактического вопроса, какие ошибки вы получаете? – Sayse