
CustomersService, ההרצאה מפעילה אותו בפונקציית בדיקה ובודקת מול הדאטה בייס שכל פעולות הלוגיקה עובדות.TestCustomersService. הפרויקט כולו רק מדגים יכולות של Entity Framework Core, ולכן הבדיקה נעשית ב-Program.CustomersService בתוך using. בגלל ה-IDisposable, בסוף הפונקציה נקרא Dispose והמשאבים של ה-DB משתחררים.AddCustomer בגרסה שמקבלת פריטים בודדים, ומוסיפים את Bart Simpson, Lisa Simpson ו-Homer Simpson. הטבלה הייתה ריקה לפני כן, ואחרי ההרצאה מופיעים בה שלושת הלקוחות.GetCustomerByEmail, לא לפי ID קבוע. אם נמצאה (לא null) משנים את האימייל ל-[email protected] וקוראים ל-UpdateCustomer. בדאטה בייס רואים את האימייל החדש.DeleteCustomer עם ה-ID שלו. אחרי refresh הוא נעלם מהטבלה.הטקסט המלא של הדקות הראשונות בהרצאה «שימוש במחלקת ה-Service» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
אז איפה אנחנו משתמשים עם המחלקה של הסרוויס של כל הלקוחות? תשובה, איפה שאנחנו רוצים בכלל הפרויקט. כרגע, מה שאנחנו רוצים לעשות זה לבנות רק פונקציה שבודקת אותה, כי כל הפרויקט הזה רק מראה יכולות של אנטיטי פריימורק קור, הוא לא באמת פרויקט לוגי אמיתי.
אנחנו רוצים לבדוק את המחלקה הזאת, ויש לנו פה static, void, test, customers, service, בצורה כזאת. בואו נציג פה קודם כל איזושהי הודעה, מה אנחנו רוצים לעשות? קודם כל אנחנו רוצים to add customers.
נייצר פה את ה-context, אבל אני לא מייצר אובייקט קונטקסט, אני מייצר אובייקט מסוג ה-customers service. בגלל שיש לו i-disposable אז אני יוצר אותו על ידי using customers service, נקרא לו customers service שווה new בצורה כזאת וה-using יגרום לזה שבסיום השימוש בו בתוך הפונקציה המערכת אוטומטית תקרא
לדיספוז של iDisposable ואז אנחנו נשחרר את המשאבים של ה-DB כאילו שמקודם בנינו את זה בתוך הפונקציה. בואו נוסיף כמה לקוחות customers, service.addCustomer, בואו נשתמש עם הפונקציה כרגע שמקבלת פריטים בבודדת ונוסיף את Bart Simpson, E-Mail, היא כמובן קוראת לפונקציה שמוסיפה ObjectCustomer,
בואו ניקח את ליסה סימפסון ובואו ניקח את הומר סימפסון. קודם כל בואו נראה האם הדבר הזה עובד. ניקח את הפונקציה נקרא לה פה טסט קסטומרס סרוויס בדטאבייס הנה טבלת הלקוחות נרפרש ונראה שהיא ריקה מתוכן אנחנו רוצים להריץ אד קסטומרס הנה שלושת הפעולות שהתבצעו שלושת השאילתות בואו נחזור בחזרה ונרפרש יופי
הנה יש לנו את כל הנתונים שנמצאים בטבלה. הדבר הבא שאנחנו רוצים לבדוק זה יהיה Update Customer. בואו נעדכן לקוח אחד ונקבל אותו, אני לא רוצה לקבל אותו לפי ID קבוע, כאילו אני לא יודע מה ה-ID שלו, אני לא רוצה להגדיר ש-ID זה 3 או 2 או 7.
אז בואו נעשה חיפוש. בואו ניקח Customer, נקרא לו Customer to App. קסטומר סרוויס נקודה, פיינד, קסטומר, למה אין לי פיינד? קראתי לפונקציה הזאת, גט קסטומר באי-אימייל, אורייט, אימייל, ואנחנו רוצים לחפש, בואו נחפש את ליסה, lisa.gmail.com, זה אימייל שאמור להיות לנו, ואנחנו רוצים לבצע בדיקה האם הוא נמצא כן
או לא, אם קסטומר to update לא שווה ל-NAL, יש לנו קסטומר כזה ואנחנו רוצים לראות איך אנחנו מעדכנים אותו, בואו נשים את זה פה האמת ויש לנו customer to update email נניח