Basic ASP.NET Core with Razor Pages and Blazor
หลักสูตร Basic ASP.NET Core with Razor Pages and Blazor เป็นการอบรมพื้นฐานการสร้างเว็บแอปด้วย ASP.NET Core 10 ทั้ง Razor Pages ฟอร์ม EF Core ระบบสมาชิก และ UI แบบ Component ด้วย Blazor ที่มาแทน Web Forms เหมาะกับผู้เริ่มต้นที่เขียน C# ได้ และนักพัฒนาที่ดูแลระบบ Web Forms เดิม
- ระยะเวลา18 ชั่วโมง · 3 วัน
- รูปแบบออนไซต์ / ออนไลน์สด
- รอบถัดไปเปิดตามคำขอ
- ใบรับรองมี Certificate
ภาพรวมหลักสูตร
ASP.NET 4.0 และ Web Forms เคยเป็นเครื่องมือหลักในการสร้างเว็บแอปขององค์กรบนแพลตฟอร์ม Microsoft แต่ Web Forms ไม่ได้ถูกพัฒนาต่อแล้ว และไม่มีใน .NET รุ่นใหม่ ปัจจุบันเว็บแอปบน .NET สร้างด้วย ASP.NET Core ซึ่งทำงานได้ทั้งบน Windows, Linux และ Docker เร็วกว่าเดิม และมีรูปแบบการสร้างหน้าเว็บที่ใกล้เคียงแนวคิดเดิมของ Web Forms อยู่สองแบบ คือ Razor Pages ที่เขียนเป็นหน้า ๆ พร้อมโค้ดของหน้า และ Blazor ที่สร้าง UI จาก Component ตอบ Event ด้วย C#
หลักสูตรนี้ปูพื้นฐานการสร้างเว็บแอปด้วย ASP.NET Core 10 บน .NET 10 ตั้งแต่ติดตั้งเครื่องมือ เข้าใจการทำงานของ HTTP, Program.cs และ Middleware สร้างหน้าเว็บด้วย Razor Pages รับข้อมูลจากฟอร์มพร้อม Validation และเชื่อมฐานข้อมูลด้วย EF Core 10 จากนั้นต่อด้วย State, Dependency Injection, Logging และการจัดการ Error ก่อนสร้าง UI แบบ Component ด้วย Blazor Web App ทำระบบสมาชิกด้วย ASP.NET Core Identity และนำแอปขึ้นเซิร์ฟเวอร์ ปิดท้ายด้วย Workshop เว็บแอปครบวงจร (อบรม 3 วัน วันละ 6 ชั่วโมง รวม 18 ชั่วโมง ระดับ Beginner)
สิ่งที่คุณจะได้รับ
- เข้าใจโครงสร้างของ ASP.NET Core 10 และความต่างจาก ASP.NET 4.x กับ Web Forms
- ติดตั้งและใช้ .NET 10 SDK, dotnet CLI และเครื่องมือพัฒนาได้คล่อง
- สร้างหน้าเว็บด้วย Razor Pages, PageModel, Layout และ Tag Helper
- รับข้อมูลจากฟอร์ม ตรวจสอบความถูกต้อง และป้องกันการโจมตีพื้นฐาน
- เชื่อมฐานข้อมูลด้วย EF Core 10 และทำหน้า CRUD พร้อมค้นหาและแบ่งหน้า
- จัดการ State, Configuration, Dependency Injection, Logging และ Error ได้ถูกวิธี
- สร้าง UI แบบ Component ด้วย Blazor Web App และเลือก Render Mode ให้เหมาะกับงาน
- เพิ่มระบบสมาชิกด้วย ASP.NET Core Identity และ Deploy เว็บแอปได้
หลักสูตรนี้เหมาะสำหรับ
- ผู้เริ่มต้นที่ต้องการสร้างเว็บแอปด้วย ASP.NET Core และ C#
- นักพัฒนาที่ดูแลระบบ ASP.NET Web Forms เดิมและต้องการย้ายมาใช้ .NET รุ่นปัจจุบัน
- IT Manager และทีมไอทีที่ต้องวางแผนปรับปรุงเว็บแอปเก่าขององค์กร
- นักศึกษาที่ทำโครงงานเว็บแอปบนแพลตฟอร์ม .NET
พื้นฐานของผู้เข้าอบรม
- เขียน HTML และ CSS พื้นฐานได้
- เขียนโปรแกรมภาษา C# เบื้องต้นได้ เช่น ตัวแปร เงื่อนไข Loop และ Class หากมาจาก VB.NET ควรทบทวนไวยากรณ์ C# มาก่อน
- เข้าใจแนวคิดฐานข้อมูลและคำสั่ง SQL พื้นฐาน
- โน้ตบุ๊กที่ติดตั้ง .NET 10 SDK และ Visual Studio 2026 หรือ VS Code ได้ พร้อมสิทธิ์ติดตั้งโปรแกรม
หัวข้อการฝึกอบรม
รายละเอียดหลักสูตร
หลักสูตรนี้เป็นฉบับปรับปรุงใหม่ปี 2026 ที่มาแทนหลักสูตร Basic ASP.NET 4.0 รุ่นเดิมซึ่งสอน Web Forms บน .NET Framework เนื้อหาเขียนใหม่ทั้งหมดสำหรับ ASP.NET Core 10 บน .NET 10 (LTS) อบรม 3 วัน วันละ 6 ชั่วโมง รวม 18 ชั่วโมง (09:00-16:00 น.) รูปแบบบรรยายพร้อม Lab บนเว็บแอปร้านค้าตัวอย่างชุดเดียวที่ต่อเติมตลอดหลักสูตร ระดับ Beginner ใช้ Razor Pages แทนหน้า
.aspx ใช้ Blazor แทนแนวคิด Server Control ใช้ EF Core 10 แทน Data Source Control และใช้ C# อย่างเดียว หลักสูตรนี้เน้นพื้นฐานแบบหน้าและ Component สำหรับผู้เริ่มต้นและผู้ที่ย้ายจาก Web Forms ส่วนผู้ที่ต้องการเจาะ MVC และ Web API ต่อยอดได้ที่หลักสูตร ASP.NET Core MVC with .NET 10 ผู้เรียนได้ Lab Guide และโค้ดตัวอย่างครบทุก Lab กลับไปใช้งานต่อ
Day 1 พื้นฐาน ASP.NET Core และ Razor Pages
Section 1: Lab: เริ่มต้น .NET 10 และ ASP.NET Core
- จาก ASP.NET 4.x และ Web Forms สู่ ASP.NET Core: อะไรเปลี่ยนไปและทำไม
- .NET 10 รุ่น LTS กับรอบการสนับสนุน และรูปแบบ UI ทั้ง Razor Pages, MVC และ Blazor
- ติดตั้ง .NET 10 SDK, Visual Studio 2026 หรือ VS Code พร้อม C# Dev Kit
- สร้างโปรเจกต์ด้วย dotnet new webapp และสำรวจโครงสร้างโฟลเดอร์
- Lab: รันแอปแรกบน Kestrel และแก้หน้าเว็บด้วย Hot Reload
Section 2: HTTP, Program.cs และ Middleware
- Request และ Response, HTTP Method, Status Code และ Header
- Program.cs แบบ Minimal Hosting แทน Global.asax และ Web.config
- Middleware Pipeline: Static Files, Routing, Authentication และ Error Page
- อ่านค่าจาก HttpContext, Query String และ Route Value
- Lab: เขียน Middleware บันทึกเวลาการตอบสนองของทุก Request
Section 3: Lab: สร้างหน้าเว็บด้วย Razor Pages
- ไฟล์ .cshtml คู่กับ PageModel เทียบกับ .aspx คู่กับ Code-Behind
- Handler Method: OnGet, OnPost และ Named Handler
- Razor Syntax: นิพจน์ เงื่อนไข Loop และการเข้ารหัส HTML อัตโนมัติ
- Routing แบบอิงโฟลเดอร์ และ Route Parameter ใน @page
- Lab: สร้างหน้ารายการสินค้าและหน้ารายละเอียดสินค้า
Section 4: Layout, Partial และ Tag Helper
- Layout Page และ Section แทน Master Page แบบเดิม
- _ViewStart, _ViewImports และ Partial View สำหรับส่วนที่ใช้ซ้ำ
- Tag Helper สำหรับลิงก์ ฟอร์ม และไฟล์ Static
- View Component สำหรับส่วนที่มีข้อมูลของตัวเอง เช่น เมนูหรือตะกร้าสินค้า
- Lab: ทำ Layout ของเว็บพร้อมเมนูและ Footer ใช้ร่วมกันทุกหน้า
Section 5: Lab: ฟอร์ม Model Binding และ Validation
- BindProperty และ Model Binding จากฟอร์ม Query String และ Route
- Data Annotations: Required, StringLength, Range และ EmailAddress
- ตรวจ ModelState ฝั่งเซิร์ฟเวอร์ และ Client-side Validation
- ป้องกัน CSRF ด้วย Antiforgery Token และรูปแบบ Post-Redirect-Get
- Lab: ฟอร์มสมัครสมาชิกพร้อมข้อความแจ้งข้อผิดพลาดภาษาไทย
Day 2 ฐานข้อมูล State และโครงสร้างแอปที่ดูแลง่าย
Section 6: เชื่อมฐานข้อมูลด้วย EF Core 10
- EF Core แทน SqlDataSource, EntityDataSource และ LinqDataSource แบบเดิม
- สร้าง Model และ DbContext แบบ Code First
- Connection String ใน appsettings.json และการลงทะเบียน DbContext
- สร้างและอัปเดตฐานข้อมูลด้วย Migration
- Lab: สร้างฐานข้อมูลสินค้าและหมวดหมู่บน SQLite
Section 7: Lab: หน้า CRUD ค้นหาและแบ่งหน้า
- Scaffolding หน้า Create, Read, Update และ Delete จาก Model
- Query ด้วย LINQ แบบ Async และโหลดข้อมูลที่สัมพันธ์กัน
- ค้นหา เรียงลำดับ และแบ่งหน้าแทน GridView กับ DataPager
- จัดการ Concurrency เมื่อมีผู้ใช้แก้ข้อมูลเดียวกันพร้อมกัน
- Lab: หน้าจัดการสินค้าพร้อมค้นหาตามชื่อและหมวดหมู่
Section 8: จัดการ State ในเว็บแอป
- ทำไมไม่มี ViewState และ Application State ใน ASP.NET Core
- Session State, Cookie และ TempData พร้อมข้อควรระวัง
- เก็บข้อมูลที่ใช้ร่วมกันด้วย Cache และ Service แทนตัวแปรระดับ Application
- ความปลอดภัยของ Cookie: HttpOnly, Secure และ SameSite
- Lab: ทำตะกร้าสินค้าด้วย Session และข้อความแจ้งผลด้วย TempData
Section 9: Dependency Injection และ Configuration
- Dependency Injection ในตัว และอายุของ Service: Singleton, Scoped และ Transient
- แยก Business Logic ออกจาก PageModel ด้วย Service Class
- appsettings.json, Environment และ Options Pattern
- เก็บค่าลับด้วย User Secrets และ Environment Variable แทนการเขียนไว้ในโค้ด
- Lab: ย้าย Logic การคำนวณราคาไปเป็น Service ที่ทดสอบได้
Section 10: Lab: Debug, Logging และจัดการ Error
- Debug ด้วย Breakpoint และ Hot Reload ใน Visual Studio หรือ VS Code
- Logging ในตัวด้วย ILogger และการกำหนด Log Level
- Developer Exception Page, หน้า Error สำหรับผู้ใช้ และหน้า 404
- Health Check สำหรับตรวจสถานะแอป แทน Tracing แบบเดิม
- Lab: ไล่หา Bug จาก Log แล้วแก้ไขพร้อมหน้า Error ที่เป็นมิตร
Day 3 Blazor, ระบบสมาชิก และนำแอปขึ้นใช้งาน
Section 11: Lab: เริ่มต้น Blazor Web App
- Razor Component, Parameter และ Event Handling เทียบกับ Server Control แบบเดิม
- Data Binding ด้วย @bind และ Component Lifecycle
- Render Mode: Static SSR, Interactive Server, Interactive WebAssembly และ Auto
- เลือก Render Mode ให้เหมาะกับหน้าแต่ละแบบ
- Lab: สร้าง Component ตัวนับสินค้าและการ์ดสินค้าที่ใช้ซ้ำได้
Section 12: Lab: ฟอร์มและตารางข้อมูลด้วย Blazor
- EditForm, InputText, InputNumber และ DataAnnotationsValidator
- QuickGrid แสดงข้อมูล เรียงลำดับ และแบ่งหน้า
- ใช้ EF Core ใน Component อย่างปลอดภัยด้วย DbContextFactory
- เก็บ State ระหว่าง Prerender ด้วย [PersistentState] ใน .NET 10
- Lab: หน้าจัดการคำสั่งซื้อแบบ Interactive ด้วย Blazor
Section 13: ระบบสมาชิกด้วย ASP.NET Core Identity
- Authentication กับ Authorization ต่างกันอย่างไร
- เพิ่ม ASP.NET Core Identity: สมัครสมาชิก Login และ Logout
- กำหนดสิทธิ์ด้วย Role และ Policy ทั้งใน Razor Pages และ Blazor
- รู้จัก Passkey ที่มาพร้อม Template ของ Blazor Web App ใน .NET 10
- Lab: จำกัดหน้าจัดการสินค้าให้เฉพาะผู้ดูแลระบบ
Section 14: Lab: Deploy และย้ายระบบจาก Web Forms
- Publish แอปและตั้งค่า Environment สำหรับ Production
- Deploy บน IIS ด้วย ASP.NET Core Hosting Bundle
- สร้าง Container Image ด้วย Docker สำหรับ Linux Server หรือ Cloud
- แนวทางย้ายระบบ Web Forms เดิมทีละส่วน และเลือกระหว่าง Razor Pages กับ Blazor
- Lab: Publish แอปจาก Workshop และทดสอบบนเครื่องปลายทาง
Section 15: Workshop: เว็บแอปร้านค้าครบวงจร
- ออกแบบหน้าเว็บและฐานข้อมูลจากโจทย์ระบบสั่งซื้อสินค้า
- หน้าร้านด้วย Razor Pages และหน้าจัดการหลังบ้านด้วย Blazor
- เพิ่มระบบสมาชิก สิทธิ์ผู้ดูแล และ Logging
- Workshop: นำเสนอผลงาน รีวิวโค้ดร่วมกัน และสรุปแนวทางเรียนต่อ
รอบอบรมและรูปแบบการอบรม
สำหรับบุคคล — รอบอบรมทั่วไป
ขณะนี้ยังไม่มีรอบอบรมเปิดรับสมัคร ลงชื่อจองไว้ได้เลย ทีมงานจะติดต่อกลับเป็นกลุ่มแรกเมื่อเปิดรอบถัดไป หรือสอบถามทางไลน์ หรือโทร 02-570-8449 หรือ 088-807-9770
สำหรับองค์กร — In-house / Private Training
- ปรับเนื้อหาให้ตรงกับเครื่องมือและงานจริงของทีม
- เลือกวันเอง อบรมที่บริษัทหรือออนไลน์สด
- ออกใบเสนอราคาในนามนิติบุคคลให้ฝ่ายจัดซื้อ
วิทยากรผู้สอน
คำถามที่พบบ่อย
ASP.NET Web Forms ยังใช้ได้อยู่ไหม ควรย้ายไปใช้อะไร
แอป Web Forms เดิมยังรันบน .NET Framework 4.8 ได้ แต่ Web Forms ไม่ได้ถูกพัฒนาต่อและไม่มีใน ASP.NET Core หรือ .NET รุ่นใหม่ งานใหม่จึงควรสร้างด้วย ASP.NET Core โดย Razor Pages เหมาะกับผู้ที่คุ้นกับการเขียนเป็นหน้า ๆ พร้อม Code-Behind ส่วน Blazor เหมาะกับผู้ที่คุ้นกับการวาง Control และเขียนโค้ดตอบ Event ทั้งสองแบบใช้ C# และอยู่ในโปรเจกต์เดียวกันได้ จึงย้ายระบบเดิมมาทีละส่วนได้
Razor Pages กับ Blazor ต่างกันอย่างไร ควรเลือกแบบไหน
Razor Pages สร้าง HTML บนเซิร์ฟเวอร์ทีละหน้า แต่ละหน้ามี PageModel รับ Request แบบ GET และ POST เหมาะกับเว็บที่เน้นเนื้อหาและฟอร์มทั่วไป ส่วน Blazor สร้าง UI จาก Component ที่นำกลับมาใช้ซ้ำได้ และเลือก Render Mode ได้ว่าจะแสดงผลแบบ Static หรือโต้ตอบกับผู้ใช้ผ่านเซิร์ฟเวอร์หรือ WebAssembly เหมาะกับหน้าจอที่มีการโต้ตอบมาก เช่น ระบบหลังบ้าน หลายระบบจึงใช้ทั้งสองแบบร่วมกัน
ASP.NET Core เก็บสถานะของผู้ใช้ได้อย่างไร เมื่อไม่มี ViewState แล้ว
HTTP ไม่จำสถานะระหว่าง Request ASP.NET Core จึงให้เลือกเก็บตามลักษณะข้อมูล ค่าในฟอร์มส่งกลับมาผ่าน Model Binding ข้อมูลของผู้ใช้แต่ละคนเก็บใน Session หรือ Cookie ข้อความที่ต้องแสดงครั้งเดียวหลัง Redirect ใช้ TempData และข้อมูลกลางใช้ Cache หรือ Service ผ่าน Dependency Injection ส่วน Blazor แบบ Interactive จะเก็บสถานะไว้ใน Component ระหว่างที่ผู้ใช้เปิดหน้าอยู่
หลักสูตร Basic ASP.NET Core with Razor Pages and Blazor เหมาะกับใคร ต้องมีพื้นฐานอะไรมาก่อน
เหมาะกับผู้เริ่มต้นที่ต้องการสร้างเว็บแอปด้วย ASP.NET Core นักพัฒนาที่ดูแลระบบ Web Forms เดิมและต้องการย้ายมาใช้ .NET รุ่นปัจจุบัน IT Manager ทีมไอที และนักศึกษาที่ทำโครงงานบน .NET ควรเขียน HTML และ C# เบื้องต้นได้ และรู้จักฐานข้อมูลกับคำสั่ง SQL พื้นฐาน หลักสูตรใช้ C# อย่างเดียว ผู้ที่มาจาก VB.NET ควรทบทวนไวยากรณ์ C# มาก่อน
เรียนจบหลักสูตร Basic ASP.NET Core with Razor Pages and Blazor แล้วทำอะไรได้บ้าง
สร้างเว็บแอปด้วย ASP.NET Core 10 ได้ทั้งแบบ Razor Pages และ Blazor รับข้อมูลจากฟอร์มพร้อม Validation จัดการฐานข้อมูลด้วย EF Core 10 ทำหน้า CRUD ค้นหาและแบ่งหน้า จัดโครงสร้างแอปด้วย Dependency Injection และ Logging เพิ่มระบบสมาชิกด้วย Identity และ Deploy บน IIS หรือ Docker ได้ รวมถึงวางแผนย้ายระบบ Web Forms เดิมได้ ผู้ผ่านการอบรมได้รับใบประกาศนียบัตร (Certificate of Completion) ที่มีเลขที่ของตัวเองและตรวจสอบออนไลน์ได้
จัดอบรมหลักสูตร Basic ASP.NET Core with Razor Pages and Blazor ให้ทีมในองค์กรได้ไหม
ได้ หลักสูตรนี้จัดเป็นการอบรมแบบ In-house ให้ทีมในองค์กรได้ และปรับตัวอย่างให้ตรงกับงานของทีม เช่น ใช้หน้าจอจากระบบ Web Forms ที่ทีมดูแลอยู่เป็นโจทย์ฝึกย้ายมาเป็น Razor Pages หรือ Blazor ขอใบเสนอราคาได้จากหน้านี้ หรือติดต่อทาง LINE @itgenius โทร 02-570-8449

