יום: אוקטובר ב1, 2023

כדי לממש delete משתמשים ב-HttpDelete. שאר ה-URL זהה. לפני שאנחנו מוחקים אנחנו רוצים לבדוק שהמוצר קיים. קובץ ProductsController.cs נוסיף את הפונקציה ל-interface. קובץ IProductsRepository.cs ונממש אותה. קובץ ProductsRepository.cs

המשך למאמר המלא >>

אחרי שראינו מה הדרך הנכונה לבנות controller, ננקה את ה-controller ונראה מה יש לנו בו. קובץ ProductsController.cs יש את הפונקציה get שמביאה לנו את רשימת המוצרים. נממש את הפונקציונליות עבור פעולות אחרות. הבאת פריט בודד למוצר בודד הנתיב יהיה משהו כמו: api/products/23. ניצור את הפונקציה המתאימה. אנחנו יכולים להוסיף לפונקציה גם מה סוג הנתונים שאנחנו […]

המשך למאמר המלא >>

ב-interface שבנינו IProductsRepository אנחנו מחזירים List של Products. ה-List הזה כנראה יחזור מ-Dנ או משהו כזה, בכל מקרה זה יהיה מקום שהוא לא השרת שלי. בגלל זה יש פה משהו לא תקין שאנחנו מחזירים את האובייקט עצמו ולא Task. הדרך הנכונה להחסיר את האובייקט היא על ידי Task: כאשר אנחנו פונים לשרת, והוא מבצע פנייה […]

המשך למאמר המלא >>

נראה את מימוש Dependency Injection על הפרוייקט לדוגמא. בפונקציית ה-get ב-controller יש לנו coupling. קובץ ProductsController.cs יצירת ה-Interface כדי להשתמש ב-GetAllProducts צריך להכיר את ProductsRepository וזה כרגע מייצר את הבעיה. כדי לפתור את זה ניצור תיקייה שנקרא לה Contracts. בתוכה נוסיף item שהוא interface שנקרא לו IProductsRepository. בתוך IProductsRepository נשים את חתימת הפונקציה שאנחנו צריכים. […]

המשך למאמר המלא >>