猿问

ASP.NET Core 2.0 Web Api 错误

我正在阅读微软关于创建 web api 的官方教程。 https://docs.microsoft.com/en-us/aspnet/core/tutorials/first-web-api?view=aspnetcore-2.1


现在我正在 Visual Studio 中试用它,并且完全按照教程中的描述进行操作。


但我收到 2 个错误:1)找不到类型或命名空间名称“ApiController”[CS0246] 2)类型“ActionResult”不是通用的,不能与类型参数一起使用 [CS0308]


教程是否已过时或为什么我会收到这些错误?


这是控制器:


using System;

using System.Collections.Generic;

using System.Linq;

using System.Threading.Tasks;

using Microsoft.AspNetCore.Mvc;

using TodoApi.Models;


namespace TodoApi.Controllers

{

    [Route("api/[controller]")]

    [ApiController]

    public class TodoController : ControllerBase

    {

        private TodoContext _context;


        [HttpGet]

        public ActionResult<List<TodoItem>> GetAll()

        {

            return _context.TodoItems.ToList();

        }


        [HttpGet("{id}", Name = "GetTodo")]

        public ActionResult<TodoItem> GetById(long id)

        {

            var item = _context.TodoItems.Find(id);

            if (item == null)

            {

                return NotFound();

            }

            return item;

        }


        public TodoController(TodoContext context)

        {

            _context = context;


            if(_context.TodoItems.Count() == 0)

            {

                _context.TodoItems.Add(new TodoItem { Name = "Item1" });

                _context.SaveChanges();

            }


        }        

    }

}


慕哥6287543
浏览 187回答 1
1回答

慕桂英4014372

您必须安装 .Net core 2.1 SDK 才能在创建项目时有 2.1 版本选项。
随时随地看视频慕课网APP
我要回答