
UpdateGift1 שמקבלת id (כאן 4, ה-children chess) ומביאה את המתנה עם db.gifts.SingleOrDefault לפי ה-ID. משתמשים ב-SingleOrDefault כי לא יהיו שני פריטים עם אותו ID, אבל מישהו אולי מחק את הפריט.null מציגים no such gift ויוצאים מהפונקציה.gift.name ל-amazing children chess ו-gift.price ל-35.5M. אין חובה לעדכן את כל השדות, ו-AgeGroupID נשאר כפי שהוגיע מהדאטאבייס.SaveChanges. אחרי רענון הטבלה רואים את השם החדש ואת המחיר 35.5.הטקסט המלא של הדקות הראשונות בהרצאה «עדכון רשומה - שיטה ראשונה» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
אז אנחנו מגיעים לעדכון רשומה קיימת בדאטאבייס. יש שתי שיטות לעדכון. אני קודם כל רוצה להבין את השיטה הראשונה. נקרא לה פונקציה Update Gift 1. השיטה הראשונה אומרת, תשמעו, אם אתם רוצים לעדכן רשומה, הרי אתם לא מייצרים שאילתא בעצמכם, אז מה שאתם רוצים לעשות זה להשיג את אותו אובייקט
שאותו אתם רוצים לעדכן, ואז לעדכן אותו, ואז לשמור את השינויים בדאטאבייס על ידי Save Changes. זאת השיטה הראשונה.
יש לנו פה את ה-context, אנחנו לא רוצים לבנות אובייקט חדש, את זה אני אוריד. מה שאנחנו רוצים לעשות זה להשיג איזשהו אובייקט קיים מהדאטאבייס.
אז בואו ניקח int id, בואו נניח, ניקח ונראה רגע, ה-id של ה-children chest שלנו זה 4. כמובן אני רוצה לעדכן ברוב המקרים על ידי id, כי אני רוצה לעדכן מישהו ספציפי.
גיפט סימן שאלה גיפט שווה db נקודה גיפטס נקודה ואנחנו רוצים את סינגל אור דיפולט למה סינגל כי אני יודע שלא יהיה לי שניים כאלה זה בסדר להשתמש בסינגל אבל אולי שנייה לפני זה מישהו מחק לי את הפריט הזה והוא לא יהיה קיים לכן אני רוצה אור דיפולט יש לנו עבור כל גיפט תחפש שה-id שווה ל-id הזה שם למעלה אם כמובן אין את זה אם גיפט הוא נל אני חייב לבצע את הבדיקה הזאת אני לא יכול
להניח שזה אני יכול לעדכן אותו אז בואו נציג איזושהי הודעה no such gift ולא נמשיך הלאה זה רק כמובן כרגע זה בשביל just in case יש לנו כרגע את הגיפט שקיבלנו מהדאטאבייס ובגלל שיש לנו אותו אנחנו יכולים לבוא ופשוט לעדכן אותו.
gift.name פשוט מכניס לו ערכים אחרים. amazing children chess. בואו נגיד שאנחנו רוצים gift.price ניתן לו 35.5M. כמה נתנו פה למעלה? 30. מעולה.
הוא עלה טיפה. אני לא חייב לעדכן את הכל, אם אני רוצה לעדכן גם את ה-age group ID, אני יכול, אבל לא חייבים, אז אפשר להשאיר אותו כשתיים ואפשר להוריד את זה כליל.