Cách Tạo Web API C#

Trong bài trước chúng tôi đã giới thiệu về Web API là gì.Bài này chúng tôi sẽ hướng dẫn cách tạo Web API C# trong ASP.NET.Mục đích của bài này giúp cho các bạn biết được các bước tạo một dự án Web API, hiểu được các phương thức GET, POST… và cách gọi để kiểm tra Web API.

 

Các bước tạo Web API trong ASP.NET sử dụng ngôn ngữ C# theo mô hình MVC.

1.Tạo dự án Web API

2.Tạo Model:

3.Tạo Controller:

4.Cấu hình Route và định dạng đường dẫn URL để chạy Web API.

5.Chạy và kiểm tra web API.

 

Bước 1: Tạo dự án Web API.

Trong hướng dẫn này chúng tôi sử dụng Visual Studio 2019 để tạo Web API

-Mở Visual Studio 2019 và tạo mới dự án Web API.

-Chọn ngôn ngữ lập trình và nền tảng cho dự án Web API. Ở đây chúng tôi chọn nền tảng Web API ASP.NET và ngôn ngữ là C#.

-Cấu hình đặt tên dự án Project name là: ‘Web_API_Demo’ và nơi lưu trữ Location cho dự án Web API trong thư mục: ‘D:\Ihoclaptrinh.com\Code C#\Web_API\Web_API_Demo

-Tạo mới ứng dụng Web API sử dụng ASP.NET và mô hình MVC.

Sau khi khởi tạo dự án Web API có cấu trúc như sau:

 

Bước 2: Tạo Model

Model là một lớp dùng để tạo các đối tượng Object cho dữ liệu.Các đối tượng này được Web API chuyển đổi (serialize) sang kiểu dữ liệu dạng: JSON, XML… hoặc định dạng khác.

Trong ví dụ này chúng tôi sẽ tạo mội đối tượng Employee (Nhân viên) trong Model.

Tạo đối tượng Employee trong Model như sau:

Click chuột phải thư mục Models sau đó chọn Add Class.

Nhập tên Class: Employee sau đó chọn Add

 

Viết code C# cho class Employee trong Model của Web API như sau:

Tạo đối tượng Employee có 2 thuộc tính là mã nhân viên (EmployeeID) và tên nhân viên EmployeeName).

Ví dụ Code C# Model

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace Web_API_Demo.Models
{
    public class Employee
    {
        public string EmployeeID { get; set; }
        public string EmployeeName { get; set; }
    }
}

 

Bước 3: Tạo Controller

Trong Web API, Controller là nơi xử lý các yêu cầu HTTP request từ Client.

Tạo Controller trong Web API như sau:

Click chuột phải thư mục Controllers sau đó chọn Add Controller.

-Chọn Web API 2 sau đó nhấn nút Add

-Nhập tên Controller: EmployeeController

Viết Code C# Controller: EmployeeController

Giả sử yêu cầu bài toán là lấy danh sách các nhân viên và tạo danh nhân viên thông qua Web API.Chúng ta cần xây dựng hàm lấy danh sách nhân viên (GET_ALLEmployees) và tạo danh sách nhân viên (POST_CreateEmployees) như sau:

Ví dụ Code C# Controller

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Data;
using Web_API_Demo.Models;

namespace Web_API_Demo.Controllers
{
    public class EmployeeController : ApiController
    {
        // GET api/Employee/GET_ALLEmployees  -ihoclaptrinh.com
        [HttpGet]
        public HttpResponseMessage GET_ALLEmployees()
        {
            List<Employee> list_employees = new List<Employee>();
            for (int i = 0; i <= 5; i++)
            {
                //Tạo đối tượng Employee 
                Employee emp = new Employee();
                emp.EmployeeID = "EployeeID_" + i;
                emp.EmployeeName = "EmployeeName_" + i;
                list_employees.Add(emp);   // Add vào danh sách list_employees
            }

            if (list_employees != null)
            {
                return Request.CreateResponse(HttpStatusCode.OK, list_employees);
            }
            else
            {
                return Request.CreateResponse(HttpStatusCode.NotFound);
            }
        }

        // POST api/Employee/POST_CreateEmployees  -ihoclaptrinh.com
        [HttpPost]
        public HttpResponseMessage POST_CreateEmployees(Employee emp_Object)
        {
            List<Employee> list_employees = new List<Employee>();
            for (int i = 0; i <= 5; i++)
            {
                Employee emp = new Employee();
                emp.EmployeeID = emp_Object.EmployeeID + i;
                emp.EmployeeName = emp_Object.EmployeeName + i;
                list_employees.Add(emp);   // Thêm vào danh sách Employee
            }

            if (list_employees != null)
            {
                return Request.CreateResponse(HttpStatusCode.OK, list_employees);
            }
            else
            {
                return Request.CreateResponse(HttpStatusCode.NotFound);
            }
        }
    }
}

Bước 4: Cấu hình Root đường dẫn URL Web API.

Để chạy một Web API hoặc gọi một Web API bạn cần phải cấu hình đường dẫn link URL Web API.

Cấu hình đường dẫn link URL Web API như sau:

Click vào thư mục App_Start sau đó Click chọn WebApiConfig.cs

Thay đổi phần routeTemplate thành : routeTemplate: "api/{controller}/{action}/{id}"

Bước 5: Chạy và kiểm tra Web API.

-Chạy Web API : Bạn có thể chạy chương trình Web API từ source code trong Visual studio hoặc bạn cài đặt triển khai ứng dụng trong IIS.Ở đây tôi chạy chương trình Web API từ Local để kiểm tra lấy danh sách nhân viên qua Web API.

 

-Kiểm tra Web API sử dụng phần mềm Postman.

Phần mềm Postman cho phép bạn test và kiểm tra Web API.

Kiểm tra Web API bằng phần mềm Postman như sau:

- Kiểm tra lấy danh sách nhân viên qua Web API sử dụng phương thức GET:

- Kiểm tra tạo danh sách nhân viên Employee qua Web API sử dụng phương thức POST: