Я пытался найти проблему и, возможно, изменил код непреднамеренным образом.Я строю webapi для изучения бэкэнда, используя почтальон в качестве внешнего интерфейса для выполнения операций CRUD над базой данных.У меня были проблемы с написанием методов, потому что я новичок в кодировании, и когда я попытался отладить, я, возможно, удалил код VS кода, хотя это не имело значения в операторах using.
Я потратил так много времени на выяснение методов и проблем с погоней, что даже не представляю, что я мог удалить в операторах using, поэтому понятия не имею, с чего начать.
using System;
using System.Collections.Generic;
using Microsoft.AspNetCore.Mvc;
namespace L06HandsOn.Models
{
public class Car
{
internal static readonly IActionResult ToList;
public int Id {get; set;}
public int Year {get; set;}
public string Make {get; set;}
public string Model {get; set;}
public int numberOfPassengers {get; set;}
}
}
когда я запускаю dotnet, он говорит, что Car.ToList никогда не назначается и всегда будет иметь значение по умолчанию null.Когда я запускаю почтальон, я всегда получаю внутреннюю ошибку сервера 500, но я получаю ее даже тогда, когда она действительно завершает операции.
EDIT * Вот контроллер.
using Microsoft.AspNetCore.Mvc;
using L06HandsOn.Models;
using System.Collections.Generic;
namespace L06HandsOn.Controllers
{
[Route("api/[controller]")]
[ApiController]
public class CarsController : ControllerBase
{
private readonly CarsContext _context;
public CarsController(CarsContext context)
{
_context = context;
}
// POST api/Cars
[HttpPost]
public IActionResult Post([FromBody] Car car )
{
if (ModelState.IsValid)
{
_context.Add(car);
_context.SaveChanges();
}
return CreatedAtRoute("", car.Id, car);
}
// GET api/car(all)
[HttpGet]
public IActionResult Get()
{
return Ok(_context.Cars);
}
// GET api/car(by Id)
[HttpGet("{id:int")]
public IActionResult Details(int id)
{
return Ok(_context.Cars.Find(id));
}
//GET api/car(if numberOfPassengers<3)
[HttpGet("{numberOfPassengers:int}")]
[Route("Get3")]
public IActionResult Details2(int numberOfPassenger)
{
return Ok(_context.Cars.Find(numberOfPassenger<3));
}
//GET api/car(Order by year DESC)
/* [HttpGet("{year:int}")]
[Route("YDESC")]
public IActionResult Details3(int year)
{
return Ok(_context.Cars.Find(year.OrderBy.DESC));
}*/
}
}
VT Chiew Я связываю это только потому, что код ошибки, который я получаю, читает
Models\Car.cs(9,48): warning CS0649: Field 'Car.ToList' is never assigned to, and will always have its default value null [C:\Users\Jon-Michael\Desktop\Programming\CSharp\L06HandsOn\L06HandsOn.csproj]
Код, на который он ссылается, это Models \ Car.cs строка 9, которая
internal static readonly IActionResult ToList;
, который при наведении курсора говорит IActionResult Car.ToList, поэтому в моей голове звучит так, как будто отсутствует оператор использования, который появился в дотнет-сборке нового веб-API.Я не боюсь признать, что я новичок, и я учусь, я не знаю правильной терминологии или чего-то еще, кроме того, как это имеет смысл в моей голове.