Я пытаюсь отобразить остаток на счете в базе данных в разных валютах.В зависимости от индекса comboBox значение валюты изменяется.Проблема в том, что с параметром currencyValue в строке запроса программа никогда не входит в цикл while (reader.Read ()).Только с параметром.Когда я просто использую магическое число, например 4.30, в строке вместо этого, оно работает отлично, но с параметром, значение которого равно 4.30, ничего не происходит (работает только с 1).
private void btnWybierz_Click(object sender, EventArgs e)
{
string fullname = cmbKonto.Text;
string query = string.Format("SELECT CAST(balance / '{0}' AS DECIMAL(10, 2)) " +
"FROM dbo.Accounts " +
"WHERE (firstname + ' ' + lastname)='{1}'", currencyValue, fullname);
using (SqlConnection connection = ConnectToDB.ConnectDB())
{
using (SqlCommand command = new SqlCommand(query, connection))
{
using (var reader = command.ExecuteReader())
{
if (reader.HasRows)
{
while (reader.Read())
{
saldo = reader[0];
tbSaldo.Text = saldo.ToString();
}
}
}
}
}
}