В настоящее время я работаю над групповым проектом, который включает использование веб-API.Я использую C # ASP.NET Core 2.2 API проект с дополнительными классами и всеми остальными бла-бла-бла.
Данные подключены к базе данных Azure и работают.Проблема заключается в запросе get с прикрепленным к нему идентификатором.По какой-то причине метод не работает или вызывается, если я не использую его в операторе if и else.
Я добавил следующий код:
[HttpGet("{id}")]
public ActionResult<List<User>> GetUser(int id)
{
var user = UserContext.User.AsQueryable().
Where(i => i.id == id).ToList();
if(user == null)
{
return NotFound();
}
else
{
return user;
}
}
Это не 'не имеет значения, если бы я сделал это:
[HttpGet("{id}")]
public ActionResult<List<User>> GetUser(int id)
{
var user = UserContext.User.AsQueryable().
Where(i => i.id == id).ToList();
if(user != null)
{
return user;
}
else
{
return NotFound();
}
}
Это:
[HttpGet("{id}")]
public ActionResult<List<User>> GetUser(int id)
{
var user = UserContext.User.AsQueryable().
Where(i => i.id == id).ToList();
if(user == null)
{
return user;
}
else
{
return NotFound();
}
}
Только это заставит метод работать:
[HttpGet("{id}")]
public ActionResult<List<User>> GetUser(int id)
{
var user = UserContext.User.AsQueryable().
Where(i => i.id == id).ToList();
if(user != null)
{
return NotFound();
}
else
{
return NotFound();
}
}
Почему это не работаетдолжным образом?Что-то мне не хватает?