ASP.NET CORE WEB API ตอนที่แล้ว (ตอนที่ 1 การสร้างโปรเจ็ค) ได้ทดลองสร้างและ run เว็บแอปปลิเคชั่นในตอนนี้ จะเป็นการเพิ่ม controller เข้ามาในโปรเจ็ค ผลก็คือทำให้โปรเจ็คมี Path เพิ่มเติมขึ้นมาตามที่เราระบุ
รู้จัก Controller กันก่อน
Controller คือส่วนที่มีหน้าที่บริหารจัดการ request ที่ผู้ใช้งานติดต่อมายัง application ของเรา โดยการรับคำสั่ง (เช่นผู้ใช้งานพิมพ์ url ใน browser แล้วกด enter เพื่อเรียกเว็บ) แล้วทำงาน (Action) โดยอาจจะส่งไปหา Model หรือ View เพื่อส่งค่ากลับไปยังผู้ใช้งาน
ขั้นตอนการสร้าง controller ใน ASP.NET CORE WEB API
เพื่อให้เห็นภาพในการทำงาน เราจะทำการเพิ่ม controller เข้าไปยังโปรเจ็คที่เราเคยสร้างไว้ในตอนที่แล้ว โดยใน
1. คลิกขวาที่ Folder controller จากนั้นเลือก Add controller

2. เลือก API Read write

3 กำหนดชื่อ โดยชื่อที่กำหนดนี้จะเป็นชื่อที่ใช้ใน URL และจะต้องมีคำว่า controller ต่อท้ายด้วย ในตัวอย่างกำหนดเป็น StudentsController

4.ตอนนี้เราจะมีไฟล์ controller เป็นที่เรียบร้อยแล้ว
5. ทำการ modify ข้อความสักเล็กน้อย

6. รันโปรเจ็ค โดยกดปุ่ม ISS Express จากนั้นพิมพ์ url โดยระบุชื่อ controller ของเรา จะเห็นว่าโปรแกรมของเราจะคืนค่ามายังเว็บ browser แล้วครับ


Controller กับ Application Path ใน ASP.Net CORE project
การกำหนด path ของโปรแกรมนั้น จะกำหนดในไฟล์ controller โดยจะมี code [Route(“api/[controller]“)] ระบุอยู่
ถ้าเราต้องการ Modify path ตามใจเรา เราก็แก้ไขตรงส่วนนี้ได้ เช่น แก้เป็น [Route[“myAPI/V2/[controller]”)] อย่างนี้เป็นต้น เมื่อผู้ใช้งานเรียกใช้ ก็ต้องระบุ path url เป็น http://localhost:/myAPI/V2/ชี่อcontroller ก็จะวิ่งไปหาไฟล์ controller ของเราได้ครับ


วิธีเปลี่ยน controller ตั้งต้นหรือ url ตั้งต้น ของโปรเจ็คเรา
หากเรารันโปรแกรมจะเห็นว่า มันจะวิ่งไปที่ https://localhost:44332/api/values เป็นที่แรก หากเราต้องการเปลี่ยนไปที่ controller ที่เราต้องการก็สามารถทำได้ โดยไปแก้ไขที่ไฟล์ launchSetting.json เป็นค่าที่เราต้องการได้ครับ

สรุป
สำหรับตอนนี้จะเห็นว่า เราได้ทำการเพิ่ม controller เข้ามายังโปรเจ็ค ซึ่ง controller มีหน้าที่ในการรับคำสั่งหรือรับ request จาก user แล้วนำมาประมวลผลหรือส่งต่อไปยัง view หรือ model เพื่อ ส่งค่าคืนกลับไปให้กับ user อีกทีครับ
สำหรับตอนนี้ สวัสดีครับ
ติดตามบทความเกี่ยวกับ coding ได้ที่นี่ https://www.mifasoft.com/category/article/coding/
ติดตามความเคลื่อนไหน mifasoft ผ่านทาง facebook fan page : www.facebook.com/mifasoft

SwiftUI App Scene และ View ใช้สร้าง app ได้ทั้งแอปแล้ว

Some Keyword ใน SwiftUI คืออะไร และใช้เพื่ออะไร

Swift Grammar – วิธีอ่านเอกสารอ้างอิงของ swift ให้เข้าใจ

Decorator pattern คืออะไร
