ฉันกำลังสร้าง. NET 4.5 C # Web API RESTful solution และฉันต้องการให้ใครบางคนบอกฉันว่าโซลูชันโครงการของฉันนั้นถูกต้องและ / หรือฉลาด (- เพียงพอหรือยัง) สำหรับโซลูชั่นที่ออกแบบโดยใช้ Domain Driven Design โปรด
โซลูชันได้แบ่งออกเป็น 6 โครงการ:
- /ฐาน
(ไม่ได้อ้างอิงอะไรเลย)
โครงการเว็บและสร้างส่วนต่อประสานระหว่างโซลูชันกับโลกภายนอก มีตัวควบคุม Web API ไม่มีเหตุผลใดเลยในการรวบรวมค่าจากวัตถุที่ร้องขอและขอให้ BizApi ทำงานได้
- /Biz.Api
(อ้างอิงโดยฐาน])
ให้บริการโดเมนและอนุญาตให้ / โครงการอินเทอร์เฟซฐานสามารถเข้าถึงวัตถุตรรกะทางธุรกิจของโดเมนในโครงการ /Biz.Domain
- /Biz.Domain
(อ้างอิงโดย Biz.Api)
จัดเตรียมคลาสโดเมนสำหรับเลเยอร์ Biz.Api เหล่านี้มีวิธีการจัดการข้อมูลของธุรกิจในหน่วยความจำ
- /Dal.Db
(อ้างอิงโดย Biz.Api)
เลเยอร์ที่เก็บฐานข้อมูล เข้าถึงฐานข้อมูลและแมปข้อมูลที่ส่งคืนไปยัง DTO ภายในที่กำหนดในเลเยอร์ / อินเตอร์เฟส
- /Dal.Services
(อ้างอิงโดย Biz.Api)
จัดเตรียมพร็อกซีเลเยอร์กับการอ้างอิงภายนอกเช่นบริการเว็บและจับคู่ข้อมูลที่ส่งคืนไปยัง DTO ภายในที่กำหนดในโครงการ / อินเตอร์เฟส
- / การเชื่อมต่อ
(อ้างอิงจากโครงการส่วนใหญ่ด้านบน)
มีคลาส DTO สำหรับส่งข้อมูลรอบ ๆ โซลูชันและอินเตอร์เฟส C # เพื่อกำหนดสัญญาสำหรับสิ่งต่าง ๆ เช่น IoC