System.FormatException: a string de entrada não estava no formato correto, ao converter a string em decimal.
Estou com um pequeno problema com o ASP.NET e C #. Este é o meu código de erro:
Uma exceção do tipo 'System.FormatException' ocorreu no mscorlib.dll, mas não foi tratada em> código do usuário
Informações adicionais: a sequência de entrada não estava no formato correto.
protected void Page_Load(object sender, EventArgs e)
{
if(this.IsPostBack == false)
{
Currency.Items.Add(new ListItem("Euro", "0.85"));
Currency.Items.Add(new ListItem("Yen", "11.30"));
Currency.Items.Add(new ListItem("PLN", "4.20"));
Currency.Items.Add(new ListItem("GBP", "5.62"));
}
}
protected void Convert_Click(object sender, EventArgs e)
{
decimal oldAmount;
bool succes = Decimal.TryParse(TextBox.Value, out oldAmount);
if(succes)
{
ListItem item = Currency.Items[Currency.SelectedIndex];
decimal newAmount = oldAmount * decimal.Parse(item.Value);
Result.InnerText = "Result: " + newAmount;
}
}
Tentei Decimal.Parse, Decimal.TryParse e outras combinações estranhas. Agora tenho certeza de que o problema é com cadeias e as analisa em decimal. Quando criei a variável String - houve o mesmo erro ao analisar. Então, alguém pode me dizer o que fazer para converter String em decimal?