PracticU

יצירת Controller בסיס

בלי כתוביותעם כתוביות
PracticU › קורס MVC › יצירת Controller בסיס
מילון מושגים:
קונטרולר - רכיב שמתווך בין הממשק לבין הלוגיקה והנתונים, מקבל בקשות ומחליט כיצד לטפל בהן (למשל בדפוס MVC).
פונקציה - קטע קוד בעל שם שמבצע משימה מוגדרת, מקבל ערכי קלט (פרמטרים) ויכול להחזיר תוצאה. מאפשרת לארגן קוד ולהשתמש בו שוב.

יצירת Controller בסיס
בהרצאה בונים BaseController - קונטרולר בסיס שכל הקונטרולרים באתר יורשים ממנו, כך שקוד שצריך בכל האקשנים נכתב פעם אחת בלבד.
השלבים העיקריים
1. קונטרולר ריק: יוצרים קונטרולר בשם BaseController בלי פונקציות, וקונטרולר אחר, למשל מוצרים, יורש ממנו במקום מ-Controller.
2. דריסה של OnActionExecuting: הפונקציה רצה לפני כל אקשן. בתוך הדריסה חשוב לקרוא לפונקציה של הבסיס, כי אחרת היא לא תתבצע.
3. טעינה משותפת: בפונקציה טוענים מהדאטאבייס את המבצע החשוב, ושומרים אותו ב-ViewBag.Sale.
4. שימוש באתר: בדף האינדקס מציגים את הערך, והוא מופיע בכל אקשן של כל קונטרולר שיורש מהבסיס.
פקודות והגדרות
- ViewBag.Sale - הערך נטען מהדאטאבייס בבסיס. בהרצאה תוקן הטקסט שמוצג לנוסח "shoes in half price", כי הניסוח הקודם לא הסתדר בתצוגה.
שימו לב
המדריך מציג מבצע רק כדוגמה. בפרויקט אמיתי מכניסים לבסיס מה שמשותף לכל האתר, כמו מבצעים או תפריט כללי, ואז אין צורך לכתוב את הקוד בכל קונטרולר.
השיעור הבא בקורס: שימוש ב-Cache - חלק 1
מילון מושגים:
קוד מקור - הקוד שמפתחים כותבים בשפת תכנות, לפני הידור, המגדיר את פעולת התוכנה.
MVC - דפוס ארכיטקטורה שמפריד יישום לשלושה חלקים: מודל (נתונים), תצוגה (View) ובקר (Controller).

להורדת קוד מקור של כל הדוגמאות בקורס MVC – לחץ כאן


פרקי ההרצאה: יצירת Controller בסיס

  1. 00:00

    פעולה משותפת לכל ה-Actions

  2. 00:36

    OnActionExecuted ו-OnActionExecuting

  3. 01:16

    קריאה ל-base ב-Override

  4. 01:54

    מבצע ב-ViewBag לכל הדפים

תמלול ההרצאה: יצירת Controller בסיס

הטקסט המלא של הדקות הראשונות בהרצאה «יצירת Controller בסיס» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:00

    הדבר הבא שאנחנו הולכים לראות זה יצירת קונטרולר בסיס עבור כל הקונטרולרים שלנו. למה חשוב לנו לדעת את זה? כי יכול להיות שבהרבה אקשנים או בכל האקשנים אנחנו רוצים לבצע אותה הפעולה.

  2. 00:15

    במקום לחזור על הקוד הזה בכל אחד מהאקשנים אנחנו יכולים להעלות את זה לבסיס, אבל לצורך כך אנחנו צריכים לבנות ראשית קונטרולר בסיס.

  3. 00:24

    אז יש לנו פה פרויקט חדש, ומה שאנחנו הולכים לעשות זה לבנות קונטרולר, לקרוא לו בייס קונטרולר ריק לגמרי, נוסיף אותו וכל קונטרולר אחר יורש מהקונטרולר הזה.

  4. 00:41

    אין לנו שום צורך בפונקציות בקונטרולר הזה, אבל אם אנחנו רוצים לעשות איזושהי פעולה שתתבצע עבור כל הקונטרולרים שיורשים את הבייס קונטרולר, יש לנו אפשרות לרשת פונקציות מיוחדות.

  5. 00:54

    לדוגמה, פונקציה שנקראת onActionExecuted. הפונקציה הזאת מתבצעת אחרי ש-Action התבצעה. onActionExecuting נתבצע לפני שהפונקציה התבצעה ולכן בואו ניקח לדוגמה את onActionExecuting חשוב לבצע בייס נקודה ולקרוא לאותה פונקציה של הקונטרולר הבסיסי מפני שאנחנו מבצעים פה Override ולכן הפונקציה של קונטרולר הבסיס או קונטרולר האמיתי לא תתבצע אלא הפונקציה

  6. 01:31

    שלנו תתבצע במקומה ולכן עלינו לקרוא לפונקציה של הבסיס בכדי שבוודאות היא גם תתבצע וגם אנחנו יכולים פה להוסיף את הדברים שאנחנו רוצים.

  7. 01:43

    אז פה אנחנו בעצם ניגשים לדייטאבייס וטוענים בואו נניח את רשימת המבצעים או את המבצע החשוב שאנחנו רוצים להציג בכל דפי האתר. אז בואו ניקח את view bag, ניכנס אליו ונגיד שאנחנו רוצים לפתוח פה איזשהו משתנה שיגדיר איזשהו מבצע שאנחנו רוצים להציג.

לקורס המלא: קורס MVC אונליין בעברית

ההרצאה הקודמת: ולידציה - Validation

ההרצאה הבאה: שימוש ב-Cache - חלק 1

הרצאות קשורות מקורסים אחרים

  • יצירת טבלת בסיס ב-SQL
  • יצירת Controller - דוט-נט Core
  • Media Controller
  • יצירת Docker Image מאפס - ללא בסיס

קורסים נוספים במסלול

  • קורס Entity Framework Core - עבודה עם מסד נתונים בדוט-נט
  • קורס דוט-נט - NET Core. - עם Rest API
  • קורס ASP.NET
  • קורס Git ו-GitHub עם Visual Studio