#mysql #asp.net
Вопрос:
Я пытаюсь удалить, обновить, получить определенного пользователя в своей базе данных по электронной почте, а не по идентификатору, но у меня 400 Bad Request
ошибка почтальона
получить метод:
[HttpGet("{email}")] public User Get(string email) { User U = new User(); MySqlConnection S2 = GetConnect(); MySqlCommand da2 = new MySqlCommand("select * from Users where email=" email, S2); MySqlDataReader myReader = da2.ExecuteReader(); if (myReader.Read()) { U.ID = (int)myReader["ID"]; U.userName = myReader["userName"].ToString(); U.email = myReader["email"].ToString(); U.profilePicture = myReader["profilePicture"].ToString(); U.phoneNumber = myReader["phoneNumber"].ToString(); U.address = myReader["address"].ToString(); return U; } else { return null; } }
способ обновления :
[HttpPut("{email}")] [AcceptVerbs("PUT")] public IActionResult Put(string email ,[FromBody] User input) { MySqlConnection S2 = GetConnect(); MySqlDataAdapter da2 = new MySqlDataAdapter("update Users set userName='" input.userName "',email='" input.email "',profilePicture='" input.profilePicture "',phoneNumber='" input.phoneNumber "',address='" input.address "' where email=" email , S2); S2.Open(); da2.SelectCommand.ExecuteNonQuery(); S2.Close(); return Ok(input); }
Я также попытаюсь удалить код метода, если это позволит стек.
метод удаления:
[HttpDelete("{email}")] [AcceptVerbs("DELETE")] public int Delete(string email) { MySqlConnection S2 = GetConnect(); MySqlDataAdapter da2 = new MySqlDataAdapter("delete from Users where email=" email , S2); S2.Open(); da2.SelectCommand.ExecuteNonQuery(); S2.Close(); return 1; }
Комментарии:
1. пожалуйста, поделитесь своим кодом, чтобы мы могли вам в этом помочь
2. Пожалуйста, также поделитесь текстом вашего запроса на обновление API. Я думаю, что есть какая-то проблема с вашим телом, которую вы отправляете в API.