#c# #.net
Вопрос:
namespace Vectigal.Invoice.Controllers
{
[Route("api/[controller]")]
[ApiController]
public class InvoicesController : ControllerBase
{
private readonly InvoiceContext _context;
public InvoicesController(InvoiceContext context)
{
_context = context;
}
// GET: api/Invoices
[HttpGet]
public async Task<ActionResult<IEnumerable<Invoice>>> GetInvoices()
{
return await _context.Invoices.ToListAsync();
}
Я получаю сообщение об ошибке, когда пытаюсь запустить этот проект dotnet.
Что я делаю не так?
Комментарии:
1. Когда вы задаете подобный вопрос, пожалуйста, укажите, в какой строке есть ошибка (если дважды щелкнуть по ошибке, VS перейдет к нарушающей строке). Таким образом, люди смогут быстро найти проблему без необходимости компилировать ваш код у себя в голове.
2. Пожалуйста, проясните вашу конкретную проблему или предоставьте дополнительные сведения, чтобы точно указать, что вам нужно. Поскольку это написано в настоящее время, трудно точно сказать, о чем вы просите.
Ответ №1:
Это связано Invoice
с тем, что это пространство имен ( Vectigal.Invoice
), а не тип — именно то, о чем говорится в ошибке.
IEnumerable<Invoice>
является уродливым. Вы объявили что-то еще, называемое Invoice
где-то в другом месте? Если это так, либо измените его имя, либо измените имя пространства имен, чтобы они не сталкивались. Не называйте две разные вещи одним и тем же именем.
Вы всегда можете полностью указать имя, в качестве альтернативы, т. Е. : IEnumerable<SomeOtherNamespace.Invoice>
, но это становится немного многословным.