0
Я хочу обновить детали. У меня есть код в классе доступа к данным. Но после выполнения ExecuteScalar()
он переходит в блок catch и показывает исключение как null
.Ошибка в работе ado.net crud
Программа:
public bool UpdateData(Customer objcust) // passing model class object because it contains all customer properties.
{
SqlConnection con = null;
// string result = "";
//int rows = 0;
try
{
string connectionString = @"server=(local)\SQLExpress;database=CustDemo;integrated Security=SSPI;";
con = new SqlConnection(connectionString);
SqlCommand cmd = new SqlCommand("UPDATE Customer SET Name = @Name , Address = @Address, Gender [email protected] , [email protected] WHERE Customer.CustomerID = @CustomerID",con);
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@Name", objcust.Name);
cmd.Parameters.AddWithValue("@Gender", objcust.Gender);
cmd.Parameters.AddWithValue("@Address", objcust.Address);
cmd.Parameters.AddWithValue("@City", objcust.City);
con.Open();
cmd.ExecuteScalar();
return true;
}
catch(Exception ex)
{
return false;
}
}
Вы не передали параметр идентификатора клиента. Пожалуйста, проверьте, и он равен нулю. –
Может ли любое из значений, присвоенных вашим параметрам, быть нулевым? – GuidoG
Я не думаю, что это может быть null, если это значение не существует в таблице, которую она не может обновить! @GuidoG – Aravind