สอบถามหลักสูตรเลือกช่องทางที่สะดวก ทีมงานตอบเองทุกช่อง
LINE @itgeniusตอบเร็วที่สุด · จ–ศ 9:00–17:00 น.
โทรศัพท์
02-570-8449สำนักงาน088-807-9770มือถือ
อีเมลและโซเชียล
contact@itgenius.co.thสำหรับใบเสนอราคาและเอกสารFacebookitgeniusonlineYouTubeitgeniusengขอคำปรึกษาจัดอบรมให้ทีม
ภาษาโปรแกรมมิ่ง · ADC-03-10

Data Access with EF Core, ADO.NET and LINQ

หลักสูตร Data Access with EF Core, ADO.NET and LINQ เป็นการอบรมการเขียนโปรแกรมติดต่อฐานข้อมูลบน .NET 10 ด้วย ADO.NET, LINQ และ EF Core 10 ทั้งออกแบบ Model แบบ Code First และ Database First เขียน Query ที่เร็ว และจัดโครงสร้าง Data Layer เหมาะกับนักพัฒนา C# และทีมที่ต้องย้ายระบบเดิมมาใช้ EF Core

อัปเดตล่าสุด
ราคาเริ่มต้น 10,350 บาท / ท่าน 11,500 −10% ยังไม่รวม VAT 7% · มีราคาหมู่คณะ
PDFดาวน์โหลด Course Outline
  • ระยะเวลา18 ชั่วโมง · 3 วัน
  • รูปแบบออนไซต์ / ออนไลน์สด
  • รอบถัดไปเปิดตามคำขอ
  • ใบรับรองมี Certificate

ภาพรวมหลักสูตร

เกือบทุกแอปพลิเคชันในองค์กรต้องอ่านและเขียนฐานข้อมูล นักพัฒนา .NET จำนวนมากยังดูแลโค้ดที่เขียนด้วย DataSet, Entity Framework รุ่นเก่าบน .NET Framework หรือ LINQ to SQL ซึ่งหยุดพัฒนาไปแล้ว ขณะที่ระบบใหม่ใช้ Entity Framework Core บน .NET รุ่นปัจจุบัน การเข้าใจทั้ง ADO.NET, LINQ และ EF Core อย่างลึกพอจะช่วยให้เลือกเครื่องมือได้ถูกงาน เขียน Query ที่เร็ว และย้ายระบบเก่ามาสู่แพลตฟอร์มใหม่ได้อย่างมั่นใจ

หลักสูตรนี้พาผู้เรียนเขียนโปรแกรมติดต่อฐานข้อมูลบน .NET 10 เริ่มจาก ADO.NET สมัยใหม่ด้วย Microsoft.Data.SqlClient และ LINQ ตั้งแต่พื้นฐานจนถึง Operator ใหม่อย่าง LeftJoin จากนั้นเจาะ EF Core 10 ทั้งแบบ Code First และ Database First การออกแบบความสัมพันธ์ LINQ to Entities, Change Tracking, JSON Column บน SQL Server 2025, Named Query Filter, Raw SQL และ Stored Procedure แล้วต่อด้วยการปรับประสิทธิภาพ การจัดโครงสร้าง Data Layer แบบ N-Tier การใช้งานใน ASP.NET Core Web API การทดสอบ และการ Deploy Migration ก่อนปิดท้ายด้วย Workshop ย้ายโค้ดเก่ามาสู่ EF Core 10 (อบรม 3 วัน วันละ 6 ชั่วโมง รวม 18 ชั่วโมง ระดับ Intermediate)

สิ่งที่คุณจะได้รับ

  • เลือกเทคโนโลยี Data Access ที่เหมาะกับงานระหว่าง ADO.NET, Dapper และ EF Core 10
  • เขียน ADO.NET ด้วย Microsoft.Data.SqlClient อย่างปลอดภัยด้วย Parameter และ Transaction
  • เขียน LINQ ได้คล่องทั้ง Query Syntax และ Method Syntax รวมถึง Operator ใหม่ใน .NET 10
  • ออกแบบ Data Model ด้วย EF Core 10 ทั้งแบบ Code First และ Database First
  • เขียน LINQ to Entities ที่แปลงเป็น SQL ได้มีประสิทธิภาพ และจัดการ Change Tracking ได้ถูกต้อง
  • ใช้ JSON Column, Query Filter, Raw SQL และ Stored Procedure ร่วมกับ EF Core
  • จัดโครงสร้าง Data Layer แบบ N-Tier ใช้ใน ASP.NET Core Web API และ Deploy Migration ได้

หลักสูตรนี้เหมาะสำหรับ

  • นักพัฒนา C# ที่เขียนแอปพลิเคชันหรือเว็บที่ติดต่อฐานข้อมูล
  • นักพัฒนาที่ดูแลระบบเดิมบน ADO.NET, Entity Framework 6 หรือ LINQ to SQL และต้องการย้ายมา EF Core
  • นักพัฒนา ASP.NET ที่ต้องการเขียน Data Layer ให้เร็วและดูแลต่อได้ง่าย
  • ผู้ดูแลระบบและทีมไอทีในองค์กรที่ต้องอ่านและปรับปรุงโค้ดส่วนฐานข้อมูล
  • Tech Lead ที่ต้องกำหนดแนวทาง Data Access และ Migration ของทีม

พื้นฐานของผู้เข้าอบรม

  • เขียนภาษา C# ได้ เช่น Class, Method, Collection และ async/await เบื้องต้น
  • เขียน SQL พื้นฐานได้ เช่น SELECT, JOIN, INSERT, UPDATE และ DELETE
  • เคยพัฒนาเว็บด้วย ASP.NET หรือแอปพลิเคชัน .NET มาบ้าง
  • โน้ตบุ๊กที่ติดตั้ง .NET 10 SDK และ Docker Desktop ได้ พร้อมสิทธิ์ติดตั้งโปรแกรม

หัวข้อการฝึกอบรม

รายละเอียดหลักสูตร

หลักสูตรนี้เป็นฉบับปรับปรุงใหม่ปี 2026 ของหลักสูตร Programming ADO.NET Entity Framework and LINQ เนื้อหาเขียนใหม่ทั้งหมดและอัปเดตให้ตรงกับ .NET 10 และ EF Core 10 อบรม 3 วัน วันละ 6 ชั่วโมง รวม 18 ชั่วโมง (09:00-16:00 น.) รูปแบบบรรยายพร้อม Lab บนฐานข้อมูลระบบขายสินค้าจำลองชุดเดียวตลอดหลักสูตร ระดับ Intermediate หลักสูตรเจาะลึกการเขียน Data Layer โดยเฉพาะ ครอบคลุม ADO.NET, LINQ และ EF Core รวมถึงแนวทางย้ายโค้ดจาก Entity Framework รุ่นเก่า เครื่องมือทั้งหมดใช้ได้ฟรีและทุก Lab ทำงานบนเครื่องของผู้เรียนด้วย Docker ผู้เรียนจะได้ Lab Guide ซอร์สโค้ดครบทุก Lab และฐานข้อมูลตัวอย่างพร้อมไฟล์ docker-compose กลับไปใช้งานต่อ

Day 1 ADO.NET, LINQ และจุดเริ่มต้น EF Core 10

Section 1: Lab: ภาพรวม Data Access ใน .NET 10

  • เส้นทางของเทคโนโลยี: ADO.NET, Entity Framework 6, LINQ to SQL และ EF Core
  • เลือกใช้ ADO.NET, Dapper หรือ EF Core ให้เหมาะกับงาน
  • ติดตั้ง .NET 10 SDK, เครื่องมือ dotnet-ef และ IDE
  • รัน SQL Server 2025 Developer Edition ด้วย Docker
  • Lab: สร้างฐานข้อมูลตัวอย่างและโปรเจกต์ Console สำหรับทุก Lab

Section 2: ADO.NET สมัยใหม่ด้วย Microsoft.Data.SqlClient

  • SqlConnection, SqlCommand และ DataReader แบบ async
  • Parameterized Query และการป้องกัน SQL Injection
  • Connection String, การเข้ารหัสที่เปิดเป็นค่าเริ่มต้น และ Connection Pooling
  • Transaction ด้วย SqlTransaction และการจัดการ Error
  • Lab: เขียนคลาสอ่านและบันทึกข้อมูลลูกค้าด้วย ADO.NET

Section 3: Lab: LINQ ตั้งแต่พื้นฐานถึง Operator ใหม่

  • Query Syntax เทียบกับ Method Syntax และ Lambda Expression
  • Where, Select, OrderBy, GroupBy, Join และ Aggregate
  • Deferred Execution, IEnumerable เทียบกับ IQueryable
  • Operator ใหม่อย่าง CountBy, AggregateBy และ LeftJoin ใน .NET 10
  • Lab: วิเคราะห์ข้อมูลยอดขายด้วย LINQ to Objects

Section 4: Lab: เริ่ม EF Core 10 แบบ Code First

  • DbContext, DbSet และ Entity กับ Convention ที่ควรรู้
  • กำหนด Model ด้วย Data Annotations เทียบกับ Fluent API
  • สร้างและอัปเดตฐานข้อมูลด้วย Migration
  • Seed ข้อมูลเริ่มต้นด้วย UseSeeding
  • Lab: สร้างฐานข้อมูลระบบขายสินค้าจาก Model

Section 5: Database First ด้วย Scaffolding

  • Reverse Engineer ฐานข้อมูลเดิมด้วย dotnet ef dbcontext scaffold
  • เลือกตารางที่ต้องการและปรับชื่อคลาสกับ Namespace
  • ปรับแต่งโค้ดที่สร้างด้วย Partial Class และ Template
  • เมื่อไรควรใช้ Code First และเมื่อไรควรใช้ Database First
  • Lab: Scaffold ฐานข้อมูลระบบเดิมแล้วเขียน Query แรก
Day 2 ออกแบบ Model และเขียน Query ด้วย EF Core

Section 6: ความสัมพันธ์และ Inheritance

  • One-to-One, One-to-Many และ Many-to-Many
  • Foreign Key, Navigation Property และ Delete Behavior
  • Owned Type และ Complex Type สำหรับค่าที่ไม่มีตัวตนแยก
  • Inheritance แบบ TPH, TPT และ TPC กับข้อดีข้อเสีย
  • Lab: ออกแบบความสัมพันธ์ของลูกค้า คำสั่งซื้อ และสินค้า

Section 7: Lab: LINQ to Entities

  • LINQ ถูกแปลงเป็น SQL อย่างไร และดู SQL ด้วย ToQueryString กับ Logging
  • Include, ThenInclude และ Projection ด้วย Select
  • LeftJoin ใน EF Core 10, GroupBy และ Aggregate
  • Split Query และการแบ่งหน้า
  • Lab: รายงานยอดขายตามลูกค้าและหมวดสินค้า

Section 8: เพิ่ม แก้ไข ลบ และ Change Tracking

  • สถานะของ Entity และการทำงานของ SaveChanges
  • AsNoTracking สำหรับงานอ่านอย่างเดียว
  • ExecuteUpdate และ ExecuteDelete แบบเขียน Lambda ปกติใน EF Core 10
  • Transaction และ Concurrency ด้วย Row Version
  • Lab: ตัดสต็อกสินค้าพร้อมป้องกันการแก้ข้อมูลชนกัน

Section 9: Mapping ขั้นสูง: JSON และ Query Filter

  • เก็บ Complex Type เป็น JSON Column บนชนิดข้อมูล json ของ SQL Server 2025
  • Query ข้อมูลภายใน JSON ด้วย LINQ
  • Value Converter และ Shadow Property
  • Named Query Filter สำหรับ Soft Delete และ Multi-tenant
  • Lab: เก็บคุณสมบัติสินค้าเป็น JSON และซ่อนข้อมูลที่ถูกลบ

Section 10: Lab: Raw SQL, Stored Procedure และ Dapper

  • FromSql และ SqlQuery พร้อม Parameter อย่างปลอดภัย
  • ExecuteSql สำหรับคำสั่งที่ไม่คืนข้อมูล
  • เรียก Stored Procedure และ View จาก EF Core
  • ใช้ Dapper คู่กับ EF Core สำหรับ Query ที่ต้องการความเร็วสูง
  • Lab: รายงานที่ซับซ้อนด้วย Stored Procedure
Day 3 ประสิทธิภาพ โครงสร้าง และการใช้งานจริง

Section 11: Lab: ปรับประสิทธิภาพ EF Core

  • ตรวจจับปัญหา N+1 Query และการดึงข้อมูลเกินจำเป็น
  • สร้าง Index ผ่าน Migration และอ่านแผนการทำงานของ SQL Server
  • DbContext Pooling และ Compiled Query
  • Interceptor สำหรับบันทึก Query ที่ช้า
  • Lab: วัดผลก่อนและหลังปรับ Query ของรายงาน

Section 12: จัดโครงสร้าง Data Layer แบบ N-Tier

  • แยกชั้น Data, Service และ Presentation
  • Repository และ Unit of Work ควรใช้เมื่อใด เมื่อ DbContext มีให้อยู่แล้ว
  • DTO และการ Map ข้อมูลระหว่างชั้น
  • ลงทะเบียน DbContext ผ่าน Dependency Injection และอายุของ Context
  • Lab: แยก Data Layer เป็น Class Library ที่ใช้ซ้ำได้

Section 13: Lab: EF Core ใน ASP.NET Core 10 Web API

  • เชื่อม Data Layer เข้ากับ Web API
  • Endpoint สำหรับ CRUD พร้อมค้นหาและแบ่งหน้า
  • จัดการ Error จากฐานข้อมูลและ Concurrency ใน API
  • เขียน Query แบบ async ทุกชั้นเพื่อรองรับผู้ใช้จำนวนมาก

Section 14: ทดสอบและ Deploy Migration

  • ทดสอบ Data Layer กับฐานข้อมูลจริงใน Docker
  • เลือกใช้ SQLite หรือ In-Memory ในการทดสอบอย่างรู้ข้อจำกัด
  • สร้าง SQL Script แบบ Idempotent และ Migration Bundle
  • แนวทางนำ Migration ขึ้น Production อย่างปลอดภัย
  • Lab: Deploy Migration ด้วย Bundle ไปยังฐานข้อมูลทดสอบ

Section 15: Workshop: ย้ายระบบเก่ามา EF Core 10

  • แนวทางย้ายโค้ดจาก ADO.NET, EF6 และ LINQ to SQL มา EF Core
  • โจทย์: ปรับ Data Layer ของระบบตัวอย่างหรือระบบที่ผู้เรียนเลือก
  • ใช้ AI Assistant ช่วยแปลงโค้ดและตรวจ SQL ที่ได้ก่อนใช้จริง
  • นำเสนอผลงาน รีวิวร่วมกัน และสรุป Checklist ของ Data Layer

รอบอบรมและรูปแบบการอบรม

สำหรับบุคคล — รอบอบรมทั่วไป

ขณะนี้ยังไม่มีรอบอบรมเปิดรับสมัคร ลงชื่อจองไว้ได้เลย ทีมงานจะติดต่อกลับเป็นกลุ่มแรกเมื่อเปิดรอบถัดไป หรือสอบถามทางไลน์ หรือโทร 02-570-8449 หรือ 088-807-9770

สำหรับองค์กร — In-house / Private Training

  • ปรับเนื้อหาให้ตรงกับเครื่องมือและงานจริงของทีม
  • เลือกวันเอง อบรมที่บริษัทหรือออนไลน์สด
  • ออกใบเสนอราคาในนามนิติบุคคลให้ฝ่ายจัดซื้อ
ขอใบเสนอราคาอบรมองค์กร

วิทยากรผู้สอน

คำถามที่พบบ่อย

Entity Framework Core คืออะไร ต่างจากการเขียน SQL เองด้วย ADO.NET อย่างไร

EF Core เป็น ORM ของ Microsoft ที่จับคู่ตารางในฐานข้อมูลกับคลาสในโค้ด ทำให้อ่านและแก้ไขข้อมูลผ่านอ็อบเจกต์และ LINQ ได้ โดยเฟรมเวิร์กสร้างคำสั่ง SQL และติดตามการเปลี่ยนแปลงให้ ส่วน ADO.NET ผ่าน Microsoft.Data.SqlClient ต้องเปิด Connection เขียน SQL และอ่านผลจาก DataReader เอง ซึ่งควบคุมได้ละเอียดกว่าแต่ต้องเขียนโค้ดมากกว่า งานจริงมักใช้ EF Core เป็นหลัก และใช้ SQL ตรงหรือ Dapper กับ Query ที่ต้องการความเร็วเป็นพิเศษ

ออกแบบ Data Model แบบ Code First ต่างจาก Database First อย่างไร

Code First เริ่มจากเขียนคลาสที่แทนข้อมูลในโค้ด แล้วใช้ Migration ของ EF Core สร้างและอัปเดตฐานข้อมูลตามคลาส ส่วน Database First เริ่มจากฐานข้อมูลที่มีอยู่ แล้วใช้คำสั่ง dotnet ef dbcontext scaffold สร้างคลาสและ DbContext จากโครงสร้างตาราง EF Core ไม่มีไฟล์ EDMX และ Designer แบบ Entity Framework รุ่นเก่าแล้ว Code First เหมาะกับระบบใหม่ที่อยากคุมทุกอย่างในโค้ด ส่วน Database First เหมาะกับฐานข้อมูลที่ออกแบบไว้แล้วหรือดูแลโดยทีม DBA

เขียน Query ด้วย LINQ to Entities ทำอย่างไร

สร้าง DbContext ของ EF Core แล้วเขียน Query กับ DbSet ที่ต้องการ โดยใช้ Query Syntax เช่น from c in db.Customers where c.City == city select c หรือใช้ Method Syntax อย่าง Where, OrderBy และ Select ต่อกัน EF Core จะแปลง Query เป็น SQL และส่งไปฐานข้อมูลเมื่อเรียก ToListAsync หรือวนอ่านผล ดู SQL ที่สร้างได้ด้วย ToQueryString และควรใช้ Select ดึงเฉพาะฟิลด์ที่ต้องใช้ ใน EF Core 10 ยังใช้ LeftJoin ทำ Left Join ได้ตรง ๆ

หลักสูตร Data Access with EF Core, ADO.NET and LINQ เหมาะกับใคร ต้องมีพื้นฐานอะไรมาก่อน

เหมาะกับนักพัฒนา C# และ ASP.NET ที่เขียนระบบติดต่อฐานข้อมูล ทีมที่ดูแลระบบเดิมบน ADO.NET, Entity Framework 6 หรือ LINQ to SQL และผู้ดูแลระบบขององค์กรที่ต้องปรับปรุงโค้ดส่วนฐานข้อมูล ควรเขียนภาษา C# ได้ เขียน SQL พื้นฐานได้ และเคยพัฒนาเว็บด้วย ASP.NET หรือแอปพลิเคชัน .NET มาบ้าง

เรียนจบหลักสูตร Data Access with EF Core, ADO.NET and LINQ แล้วทำอะไรได้บ้าง

เขียน ADO.NET อย่างปลอดภัยด้วย Microsoft.Data.SqlClient เขียน LINQ ได้คล่อง ออกแบบ Data Model ด้วย EF Core 10 ทั้งแบบ Code First และ Database First เพิ่ม แก้ไข และลบข้อมูลพร้อมจัดการ Transaction และ Concurrency ปรับ Query ให้เร็วขึ้น จัดโครงสร้าง Data Layer แบบ N-Tier และ Deploy Migration ได้ ผู้ผ่านการอบรมได้รับใบประกาศนียบัตร (Certificate of Completion) ที่มีเลขที่ของตัวเองและตรวจสอบออนไลน์ได้

จัดอบรมหลักสูตร Data Access with EF Core, ADO.NET and LINQ ให้ทีมในองค์กรได้ไหม

ได้ หลักสูตรนี้จัดเป็นการอบรมแบบ In-house ให้ทีมในองค์กรได้ และปรับตัวอย่างให้ตรงกับงานของทีม เช่น ฝึก Scaffold และออกแบบ Data Model จากโครงสร้างฐานข้อมูลที่ทีมใช้อยู่ หรือวางแนวทางย้ายโค้ดเดิมมา EF Core ขอใบเสนอราคาได้จากหน้านี้ หรือติดต่อทาง LINE @itgenius โทร 02-570-8449

บทความที่เกี่ยวข้อง