Quickstarters
Feature Overview
How to Build a Backend for C#?
25 นาที
บทนำ ในบทเรียนนี้ คุณจะได้เรียนรู้ วิธีสร้างแบ็กเอนด์สำหรับ c# โดยใช้ back4app เราจะสำรวจวิธีการรวมฟีเจอร์สำคัญของ back4app—เช่น การจัดการฐานข้อมูล, ฟังก์ชันคลาวด์, rest และ graphql apis, การตรวจสอบสิทธิผู้ใช้, และการสอบถามแบบเรียลไทม์—เพื่อสร้างสภาพแวดล้อมการพัฒนาแบ็กเอนด์ที่ปลอดภัย, ขยายขนาดได้, และมีประสิทธิภาพสูงสำหรับแอปพลิเคชัน c# ของคุณ ไม่ว่าคุณจะใช้ asp net core หรือกำหนดเป้าหมายไปที่ net framework, back4app จะเร่งกระบวนการทำงานของคุณโดยการเสนอเครื่องมือโครงสร้างพื้นฐานที่จำเป็นสำหรับการสร้าง แอปพลิเคชันแบ็กเอนด์ วิธีการที่มีประสิทธิภาพนี้สามารถช่วยประหยัดเวลาโดยการกำจัดความจำเป็นในการกำหนดค่าเซิร์ฟเวอร์และฐานข้อมูลด้วยตนเอง ระหว่างทาง คุณจะได้เรียนรู้วิธีการใช้ตัวเลือกความปลอดภัยขั้นสูง กำหนดตารางงานด้วย cloud jobs และรวมเว็บฮุคเพื่อเพิ่มฟังก์ชันการทำงานที่หลากหลาย เมื่อสิ้นสุดคู่มือนี้ คุณจะมีพื้นฐานที่มั่นคงสำหรับการสร้าง แอปพลิเคชันเว็บ หรือ แอปพลิเคชันแบ็กเอนด์ อื่น ๆ ใน c# คุณจะพร้อมที่จะปรับแต่งการตั้งค่าพื้นฐานนี้สำหรับตรรกะทางธุรกิจที่ซับซ้อนมากขึ้นหรือการรวม api ภายนอก ข้อกำหนดเบื้องต้น ในการทำตามบทเรียนนี้ คุณจะต้องมี บัญชี back4app และโครงการ back4app ใหม่ เริ่มต้นใช้งาน back4app https //www back4app com/docs/get started/new parse app คุณสามารถลงทะเบียนได้ฟรีหากคุณยังไม่มีบัญชี คู่มือนี้แสดงวิธีการสร้างและกำหนดค่าของโครงการ back4app ของคุณ สภาพแวดล้อมการพัฒนา c# คุณสามารถใช้ visual studio หรือ visual studio code สำหรับโครงการ asp net core หรือ net framework net ดาวน์โหลดหน้า https //dotnet microsoft com/en us/download ความคุ้นเคยกับ c# ความรู้พื้นฐานเกี่ยวกับ ภาษาโปรแกรม c# และแนวคิดเชิงวัตถุ เอกสาร c# ของ microsoft https //learn microsoft com/en us/dotnet/csharp/ net sdk (สำหรับ asp net core หรือ net framework) ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้ง net sdk เวอร์ชันล่าสุดสำหรับแพลตฟอร์มของคุณ net ดาวน์โหลดหน้า https //dotnet microsoft com/en us/download ตรวจสอบให้แน่ใจว่าคุณมีสิ่งเหล่านี้ก่อนที่คุณจะเริ่มเพื่อให้การเดินผ่านดำเนินไปอย่างราบรื่น ขั้นตอนที่ 1 – สร้างโปรเจกต์ใหม่บน back4app และเชื่อมต่อ เข้าสู่ระบบ back4app และสร้างโปรเจกต์ใหม่ โปรเจกต์นี้จะเป็นพื้นฐานสำหรับ backend c# ของคุณ คลิก “new app” ในแดชบอร์ด back4app ของคุณ ตั้งชื่อโปรเจกต์ของคุณ (เช่น “csharp backend tutorial”) หลังจากสร้างเสร็จ คุณจะเห็นโปรเจกต์นี้ในแดชบอร์ดของคุณ โปรเจกต์ใหม่นี้จะจัดการการดำเนินการฐานข้อมูล การตรวจสอบสิทธิ์ การค้นหาแบบเรียลไทม์ และอื่นๆ ติดตั้ง parse net sdk (ถ้าจำเป็น) ในโปรเจกต์ c# ของคุณ (asp net core หรือ net framework) ให้เพิ่ม parse sdk ผ่าน nuget เริ่มต้น parse ดึง application id , client key (บางครั้งเรียกว่า net key) และ server url จาก “app settings” หรือ “security & keys” ของโปรเจกต์ back4app ของคุณ ด้วยขั้นตอนนี้ คุณได้ตั้งค่าแอปพลิเคชัน c# ของคุณให้สื่อสารอย่างปลอดภัยกับ back4app backend ของคุณแล้ว ตอนนี้คุณสามารถโต้ตอบกับข้อมูลแอปของคุณผ่าน parse net sdk ได้แล้ว ขั้นตอนที่ 2 – การตั้งค่าฐานข้อมูล การสร้างโมเดลข้อมูล กำหนดสคีมา (เช่น คลาส “todo”) ผ่านแดชบอร์ด back4app ของคุณหรือโดยการบันทึกวัตถุจากโค้ด การสร้างโมเดลข้อมูลโดยใช้ ai agent เปิด ai agent ในแดชบอร์ด back4app ของคุณ อธิบายโมเดลข้อมูลของคุณ (เช่น “สร้างสคีมา todo สำหรับการสาธิต c#”) ให้ ai agent สร้างคลาสและฟิลด์โดยอัตโนมัติ การอ่านและเขียนข้อมูลโดยใช้ sdk การอ่านและเขียนข้อมูลโดยใช้ rest api การอ่านและเขียนข้อมูลโดยใช้ graphql api การทำงานกับ live queries (ไม่บังคับ) เปิดใช้งาน live queries ใน การตั้งค่าเซิร์ฟเวอร์ บน back4app ในแอป c# ของคุณ คุณสามารถสมัครสมาชิกโดยใช้ไลบรารีเฉพาะหากมี หรือผ่าน websockets ตรวจสอบเอกสาร net sdk สำหรับการสนับสนุนในปัจจุบัน ฟีเจอร์นี้มีประโยชน์เมื่อสร้าง เว็บแอปพลิเคชัน ที่ต้องการการอัปเดตแบบเรียลไทม์ ขั้นตอนที่ 3 – การใช้ความปลอดภัยด้วย acls และ clps ภาพรวม acls ควบคุมการเข้าถึงการอ่าน/เขียนที่ระดับวัตถุ clps จำกัดการกระทำที่ระดับคลาส (สาธารณะ vs ผู้ใช้ที่ได้รับการตรวจสอบ vs บทบาทเฉพาะ) การตั้งค่าการอนุญาตที่ระดับคลาส ไปที่ส่วน “ฐานข้อมูล” ในแดชบอร์ด back4app เลือกคลาสของคุณ (เช่น “todo”) และเปิด การอนุญาตที่ระดับคลาส กำหนดค่า “ต้องการการตรวจสอบ” หรือการตั้งค่าที่เข้มงวดมากขึ้นตามที่ต้องการ การกำหนดค่า acls ใน c# วิธีนี้ทำให้แน่ใจว่าผู้ใช้ที่ได้รับอนุญาตเท่านั้นที่สามารถอ่านหรือแก้ไขข้อมูลแบ็คเอนด์ของคุณได้ ปกป้องการ backend development ของคุณจากการเข้าถึงที่ไม่ได้รับอนุญาต ขั้นตอนที่ 4 – การเขียนฟังก์ชัน cloud code ทำไมถึงใช้ cloud code cloud code ช่วยให้คุณสามารถรันตรรกะฝั่งเซิร์ฟเวอร์ใน javascript (แม้ว่าคลื่นของคุณจะเป็น c#) ใช้สำหรับการตรวจสอบ การกระตุ้น หรือตรรกะทางธุรกิจที่กำหนดเอง คุณไม่จำเป็นต้องมีเซิร์ฟเวอร์แยกต่างหาก—back4app โฮสต์และปรับขนาดโค้ดของคุณให้กับคุณ ฟังก์ชันตัวอย่าง parse cloud define('calculatetextlength', async (request) => { const { text } = request params; if (!text) { throw new error('no text provided'); } return { length text length }; }); การปรับใช้ back4app cli หรือ dashboard ติดตั้ง b4a cli และรัน หรือวางฟังก์ชันของคุณใน cloud code > functions ในแดชบอร์ดของแอปของคุณ การเรียกฟังก์ชัน จากโค้ด c# ของคุณ var parameters = new dictionary\<string, object> { { "text", "hello from c#" } }; var result = await parsecloud callfunctionasync\<idictionary\<string, object>>("calculatetextlength", parameters); console writeline("text length " + result\["length"]); หรือเรียกผ่าน rest/graphql สำหรับ แอปพลิเคชันแบ็กเอนด์ ขั้นตอนที่ 5 – การกำหนดค่าการตรวจสอบสิทธิ การตรวจสอบสิทธิผู้ใช้ใน back4app คลาส parse user ของ back4app จัดการการเข้ารหัสรหัสผ่าน โทเค็นเซสชัน และกระบวนการเข้าสู่ระบบที่ปลอดภัย ซึ่งเป็นสิ่งสำคัญสำหรับ แอปพลิเคชันเว็บ ที่ต้องการบัญชีผู้ใช้ ลงทะเบียน / เข้าสู่ระบบ (c#) public async task signupuser(string username, string password, string email) { var user = new parseuser() { username = username, password = password, email = email }; await user signupasync(); } public async task\<parseuser> loginuser(string username, string password) { return await parseuser loginasync(username, password); } การเข้าสู่ระบบด้วยโซเชียล หากคุณต้องการรวมการเข้าสู่ระบบด้วยโซเชียล (เช่น google, apple, facebook) โปรดดูที่ เอกสารการเข้าสู่ระบบด้วยโซเชียล https //www back4app com/docs/platform/sign in with apple ในหลายกรณี คุณจะต้องกำหนดค่าข้อมูลประจำตัวและเรียกใช้วิธีการ parse ที่เฉพาะเจาะจงหรือเพิ่มแพ็กเกจเพิ่มเติมหากมีให้สำหรับระบบนิเวศ net ขั้นตอนที่ 6 – การจัดการการจัดเก็บไฟล์ การอัปโหลดไฟล์ใน c# public async task\<string> uploadfile(string filepath) { byte\[] data = file readallbytes(filepath); var parsefile = new parsefile(path getfilename(filepath), data); await parsefile saveasync(); return parsefile url tostring(); } การแนบไฟล์กับวัตถุ public async task\<parseobject> createphotoobject(string filepath) { var photo = new parseobject("photo"); byte\[] data = file readallbytes(filepath); var parsefile = new parsefile(path getfilename(filepath), data); photo\["imagefile"] = parsefile; await photo saveasync(); return photo; } เมื่ออัปโหลดแล้ว คุณสามารถดึง url เพื่อแสดงในแอปพลิเคชันของลูกค้าได้ คุณยังสามารถตั้งค่ากฎความปลอดภัยเพื่อจำกัดการอัปโหลดไฟล์ให้กับผู้ใช้ที่ได้รับการตรวจสอบสิทธิ์เท่านั้น ขั้นตอนที่ 7 – การตรวจสอบอีเมลและการรีเซ็ตรหัสผ่าน ภาพรวม การตรวจสอบอีเมลช่วยยืนยันความเป็นเจ้าของบัญชีผู้ใช้ และการรีเซ็ตรหัสผ่านช่วยเพิ่มความสะดวกและความปลอดภัยให้กับผู้ใช้ ทั้งสองอย่างสามารถตั้งค่าได้ในแดชบอร์ด back4app การกำหนดค่าแดชบอร์ด ไปที่ การตั้งค่าแอป > การตั้งค่าอีเมล เปิดใช้งาน การตรวจสอบอีเมล และ การรีเซ็ตรหัสผ่าน ปรับแต่งเทมเพลตอีเมลตามต้องการ รหัส/การดำเนินการ ใน c# เมื่อคุณเปิดใช้งานฟีเจอร์เหล่านี้ ผู้ใช้ใหม่จะได้รับอีเมลยืนยันโดยอัตโนมัติ คุณยังสามารถเรียกคืนรหัสผ่านได้โดยโปรแกรม await parseuser requestpasswordresetasync("user\@example com"); ขั้นตอนที่ 8 – การกำหนดตารางงานด้วย cloud jobs cloud jobs ทำอะไร ใช้ cloud jobs เพื่อทำให้การทำงานอัตโนมัติ เช่น การทำความสะอาดข้อมูลหรือการส่งรายงานตามระยะเวลา งานเหล่านี้จะทำงานบนเซิร์ฟเวอร์ของ back4app โดยไม่ต้องมีการป้อนข้อมูลจากผู้ใช้โดยตรง ตัวอย่างงาน (javascript ใน cloud code) parse cloud job('cleanupoldtodos', async (request) => { const todo = parse object extend('todo'); const query = new parse query(todo); const now = new date(); const thirty days = 30 24 60 60 1000; const cutoff = new date(now thirty days); query lessthan('createdat', cutoff); const oldtodos = await query find({ usemasterkey true }); await parse object destroyall(oldtodos, { usemasterkey true }); return `deleted ${oldtodos length} old todos `; }); นำไปใช้งาน จากนั้นกำหนดตารางผ่าน การตั้งค่าแอป > การตั้งค่าเซิร์ฟเวอร์ > งานพื้นหลัง ในแดชบอร์ด back4app ขั้นตอนที่ 9 – การรวม webhooks คำจำกัดความ webhooks ช่วยให้ back4app ส่งคำขอ http post ไปยังจุดสิ้นสุดภายนอกเมื่อเกิดเหตุการณ์เฉพาะในแอปของคุณ การตั้งค่า ไปที่ เพิ่มเติม > webhooks ในแดชบอร์ดของแอปของคุณ เพิ่ม webhook ใหม่และระบุ url จุดสิ้นสุด (เช่น slack webhook หรือเซิร์ฟเวอร์ที่กำหนดเอง) เลือกทริกเกอร์เหตุการณ์ (เช่น “ระเบียนใหม่ในคลาส todo”) คุณสามารถขยายสิ่งนี้โดยการทำคำขอ http ใน cloud code ทริกเกอร์ (เช่น beforesave หรือ aftersave) หากคุณต้องการตรรกะที่ซับซ้อนมากขึ้น ขั้นตอนที่ 10 – สำรวจแผงผู้ดูแล back4app จะหามันได้ที่ไหน ในแดชบอร์ดของแอปของคุณ ไปที่ เพิ่มเติม > แอปผู้ดูแล ฟีเจอร์ แอปผู้ดูแลมีอินเทอร์เฟซที่มองเห็นได้สำหรับการดำเนินการ crud, บันทึก, งานเบื้องหลัง และการวิเคราะห์ นี่เหมาะสำหรับผู้ใช้ที่ไม่ใช่เทคนิคหรือการแก้ไขข้อมูลอย่างรวดเร็ว โดยการเปิดใช้งานและกำหนดค่าแอปผู้ดูแล คุณจะได้รับวิธีที่สะดวกในการจัดการงานการจัดการข้อมูลประจำใน เว็บแอปพลิเคชันของคุณ บทสรุป ขอแสดงความยินดี! คุณได้เรียนรู้ วิธีสร้างแบ็กเอนด์สำหรับ c# โดยใช้ back4app แล้ว คู่มือนี้ได้แสดงให้คุณเห็นว่า สร้างและกำหนดค่าโครงการ back4app ใหม่สำหรับ การพัฒนาแบ็กเอนด์ c# ใช้ net sdk เพื่อบันทึก ค้นหา และจัดการข้อมูลเชิงสัมพันธ์ รักษาความปลอดภัยข้อมูลของคุณด้วย acls และ clps ดำเนินการตรวจสอบสิทธิ์ผู้ใช้และการจัดการเซสชัน เขียนตรรกะฝั่งเซิร์ฟเวอร์ใน cloud code และกำหนดตารางงานด้วย cloud jobs จัดการการอัปโหลดไฟล์และการรวมระบบภายนอกด้วยเว็บฮุก สำรวจแผงผู้ดูแลระบบเพื่อการจัดการฐานข้อมูลที่ง่าย ทักษะเหล่านี้เป็นพื้นฐานที่มั่นคงสำหรับการสร้าง แอปพลิเคชันแบ็กเอนด์ ที่ซับซ้อนใน c# ตอนนี้คุณสามารถรวมตรรกะทางธุรกิจที่กำหนดเอง เพิ่มโครงสร้างเชิงสัมพันธ์ที่ซับซ้อนมากขึ้น และแม้แต่รวม api ภายนอกสำหรับสถานการณ์ในโลกจริง ไม่ว่าคุณจะใช้ asp net core หรือกำหนดเป้าหมายไปที่ net framework, back4app ช่วยให้คุณมุ่งเน้นไปที่การสร้างแอปที่ยอดเยี่ยมแทนที่จะต้องดูแลเซิร์ฟเวอร์ ขั้นตอนถัดไป เพิ่มพูนความรู้ เกี่ยวกับ c# และ back4app โดยการสำรวจโมเดลข้อมูลที่ซับซ้อนมากขึ้นหรือการปรับแต่งประสิทธิภาพ รวม api ภายนอก เพื่อเพิ่มฟังก์ชันการทำงานของคุณ—เช่น เกตเวย์การชำระเงินหรือบริการส่งข้อความ ตรวจสอบเอกสารทางการของ back4app สำหรับเคล็ดลับด้านความปลอดภัยขั้นสูง, การวิเคราะห์บันทึก, และการวิเคราะห์แบบเรียลไทม์ สร้างแอปพลิเคชันที่พร้อมสำหรับการผลิต โดยการขยายจากการตั้งค่านี้และนำโครงการของคุณไปยังคลาวด์ ด้วยการตั้งค่าที่ยืดหยุ่นและปรับขนาดได้นี้, คุณพร้อมที่จะรับมือกับทุก ความท้าทายในการพัฒนาแบ็คเอนด์ ใน c# กับ back4app ขอให้สนุกกับการเขียนโค้ด!