使用 ASP.NET Core MVC 建立 Web API(三)

使用 ASP.NET Core MVC 建立 Web APIhtml

使用 ASP.NET Core MVC 建立 Web API(一)api

使用 ASP.NET Core MVC 建立 Web API(二)瀏覽器

 

10、添加 GetBookItem 方法

    1) 在Visual Studio 2017中的「解決方案資源管理器」中雙擊打開BookController文件,添加Get方法的API。代碼以下。async

// GET: api/Book
        [HttpGet]
        public async Task<ActionResult<IEnumerable<Book>>> GetBookItems()
        {
            return await _context.Book.ToListAsync();
        }

        // GET: api/Book/5
        [HttpGet("{id}")]
        public async Task<ActionResult<Book>> GetBookItem(int id)
        {
            var bookItem = await _context.Book.FindAsync(id);

            if (bookItem == null)
            {
                return NotFound();
            }
            return bookItem;
        }
using Microsoft.EntityFrameworkCore;添加到文件開頭。2)將上面的代碼添加到BookController文件中後,會在ToListAsync方法下出現波浪線,
這時須要把
  

    3) 這兩個方法實現兩個 GET 終結點:post

  • GET /api/book
  • GET /api/book/{id}

    4) 在Visual Studio 2017中按F5,運行應用程序。而後在瀏覽器中分別調用兩個終結點來測試應用。測試

    5) 在瀏覽器中輸入「http://localhost:5000/api/book」查詢全部書籍信息,以下圖。spa

 

6) 在瀏覽器中輸入「http://localhost:5000/api/book/8」查詢指定有書籍信息,以下圖。3d

 

11、路由和 URL 路徑

   [HttpGet] 屬性表示響應 HTTP GET 請求的方法。 每一個方法的 URL 路徑構造以下所示:code

  • 在控制器的 Route 屬性中以模板字符串開頭:
namespace BookApi.Controllers
{
 [Route("api/[controller]")]
    [ApiController]
    public class BookController : Controller
    {
        private readonly BookContext _context;
  • [controller] 替換爲控制器的名稱,按照慣例,在控制器類名稱中去掉「Controller」後綴。 對於此示例,控制器類名稱爲「Book」控制器,所以控制器名稱爲「Book」。 ASP.NET Core 路由不區分大小寫。
  • 若是 [HttpGet] 屬性具備路由模板(例如 [HttpGet("Book")]),則將它追加到路徑。 此示例不使用模板。

    在下面的 GetBookItem 方法中,"{id}" 是書籍信息的惟一標識符的佔位符變量。 調用 GetBookItem 時,URL 中 "{id}" 的值會在 id 參數中提供給方法。htm

   // GET: api/Book/5
        [HttpGet("{id}")]
        public async Task<ActionResult<Book>> GetBookItem(int id)

        {
            var bookItem = await _context.Book.FindAsync(id);

            if (bookItem == null)
            {
                return NotFound();
            }
            return bookItem;
        }

 

12、測試 GetBookItems 方法

     本教程使用 Rester 測試 Web API。

       

      1) 安裝Firefox的組件Rester

       2) 在Visual Studio 2017中啓動 Web 應用程序。

       3) 打開Rester。

       4) 建立新請求,將 HTTP 方法設置爲「GET」,將請求 URL 設置爲 http://localhost:5000/api/Book/24。以下圖。

 

       5)  選擇「Send」。  返回結果,以下圖。

 

相關文章
相關標籤/搜索