ASP.NET Web API 2.2 - Parameter binding conventions

有 2 個東西在 create API 之前會很常接觸到 :
1.Entity Framework Query to Add a Context :
Database Context 是可以讓 Entity Framework 的功能用在 Data Model, 那這一個 DB Context 再用之前一定要去 startup.cs 做 register, 要告訴 configuration 我要用這一個額外的功能
2.DTO : Data Transfer Object
站在使用者的角度中, 這個網站所提供的服務, 假設這一個網站是購物網, 那麼大家其中之一常用的服務是價格搜尋, 這時候在 DTO 裡面就會有 2 個 Properties, 一個叫做 MinPrice, 一個叫做MaxPrice

HTTP Verb

  • GET: 大部分是想要從 DB 拿到一個或者是多個東西)
  • POST Search : 如果 Search 的東西很複雜, 就可能要從 GET 變成 POST, 這樣就不用再 URL後面一直接 Query String, 而是直接傳 object
  • PUT : Update an Existing Result
  • Delete : 刪除一筆或者是好幾筆資料

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

namespace MyWebAPI.Controllers
{
    public class ValuesController : ApiController
    {
        // GET: https://localhost:1234/api/values
        public IEnumerable<string> Get()
        {
            return new string[] { "value1", "value2" };
        }

        // GET: https://localhost:1234/api/values?id=1
        public string Get(int id)
        {
            return "value";
        }

        // POST: https://localhost:1234/api/values
        public void Post([FromBody]string value)
        {
        }

        // POST: https://localhost:1234/api/values?id=1
        public void Put(int id, [FromBody]string value)
        {
        }

        // DELETE:  https://localhost:1234/api/values?id=1
        public void Delete(int id)
        {
        }
    }
}

留言