PracticU

קריאת Documents
ממסד הנתונים - MongoDB
Entity Framework

בלי כתוביותעם כתוביות
PracticU › קורס Entity Framework Core - עבודה עם מסד נתונים בדוט-נט › קריאת Documents ממסד הנתונים - MongoDB Entity Framework
מילון מושגים:
MongoDB - מסד נתונים מסוג NoSQL שמאחסן נתונים כמסמכים בפורמט דמוי JSON, בלי מבנה טבלאי קשיח.
Entity Framework - ספריית מיקרוסופט שממפה בין אובייקטים בקוד לבין טבלאות במסד נתונים, ומאפשרת לעבוד עם הנתונים בלי לכתוב SQL ישיר.
פריימוורק - מסגרת תוכנה שמספקת מבנה וכלים מוכנים לפיתוח יישומים, כדי לחסוך כתיבת קוד חוזר.
מודל - רכיב שמייצג את הנתונים ואת הלוגיקה העסקית באפליקציה. גם ייצוג מופשט של מערכת או תהליך.
פונקציה - קטע קוד בעל שם שמבצע משימה מוגדרת, מקבל ערכי קלט (פרמטרים) ויכול להחזיר תוצאה. מאפשרת לארגן קוד ולהשתמש בו שוב.
מחרוזת - סוג נתונים שמייצג רצף של תווים, כלומר טקסט, ומשמש לאחסון מילים, משפטים או כל רצף סימנים.

קריאת Documents ממסד הנתונים - MongoDB Entity Framework
שיר אחד במודל הוא Document במסד, וההרצאה מראה איך קוראים את כולם או Document בודד לפי מזהה.
השלבים העיקריים
1. הבאת כל השירים: הפונקציה GetAllSongs מחזירה List<Song> באמצעות songs.Find(...). ה-Find מקבל ביטוי למדה עם הקריטריון להחזרה, ואם רוצים את הכול כותבים true, ואז ToList(). זה דומה מאוד ל-Entity Framework.
2. הבאת שיר לפי ID: GetOneSong מקבלת מחרוזת id, מבצעת Find על השירים שה-ID שלהם שווה לזה שהתקבל, ומסיימת ב-SingleOrDefault. השיר עשוי לא להתקיים, ולכן התוצאה יכולה להיות ריקה.
3. תצוגה קריאה: עושים override ל-ToString שמחזיר ID, שם, Performer ושנה, כדי לא לכתוב את המחרוזת שוב ושוב.
4. בדיקה ב-Program: פונקציה שרצה ב-foreach על כל השירים ומציגה אותם, ופונקציה שמציגה שיר אחד. בהצגת שיר בודד בודקים אם התוצאה ריקה, ואם כן מדפיסים הודעה שאין שיר כזה.
ID במונגו
בדאטאבייס שדה המפתח נקרא _id, וכך MongoDB קוראת לו תמיד. הערכים נוצרים ברגע ההוספה, ולכן אצל כל מי שמריץ את הקוד הם יהיו שונים. את ה-ID שבדוגמה לקח המרצה מהמסד שלו. הוא ייצא את המסד ויצרף אותו לקבצי הנושא, כדי שאפשר יהיה לייבא אותו ולקבל אותם מזהים.
אחרי ההרצאה אפשר לקרוא ממסד MongoDB גם את כל המסמכים וגם מסמך בודד לפי ID.
השיעור הבא בקורס: עדכון Documents ממסד הנתונים - MongoDB Entity Framework

פרקי ההרצאה: קריאת Documents ממסד הנתונים - MongoDB Entity Framework

  1. 00:00

    פונקציית Get All Songs עם Find

  2. 01:01

    קריטריון Lambda והמרה ל-List

  3. 01:37

    פונקציית Get One Song לפי ID

  4. 02:31

    הצגת השירים ומימוש ToString

  5. 03:33

    מזהה underline id של MongoDB

תמלול ההרצאה: קריאת Documents ממסד הנתונים - MongoDB Entity Framework

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

  1. 00:02

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

  2. 00:17

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

  3. 00:31

    תאשר כל הדוקימנטס יושבים בקולקשן, הנה הקולקשן כולו ואנחנו רוצים to get all songs תביא לי את כל השירים שיש לנו בדאטאבייס, return הנה הקולקשן כולו, songs נקודה ועל ידי find אנחנו אומרים לו מה אנחנו רוצים להביא.

  4. 00:52

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

  5. 01:29

    שיר אחד על ידי איי-די גט וואן סונג בואו ניתן סטרינג איי-די יכול להיות שהשיר לא קיים אז הפעם אנחנו רוצים לבצע פיינד ועבור כל שיר בקולקשן אם האיי-די שלו שווה לאיי-די שהתקבל לפונקציה אנחנו רוצים to סינגל אור דיפולט בצורה כזאת ויש לנו כרגע את הפונקציה שאומרת לנו הנה

  6. 02:03

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

  7. 02:31

    כל השירים, הנה הservice שלנו, ואנחנו רוצים קודם כל לבנות פה list של song, songs=service.get all, אנחנו רוצים לרוץ ב-foreach song in songs בוא תציג לי אותו כמובן בשביל שהמידע ייראה כמו שצריך אנחנו צריכים כרגע two-string בואו ניגש רגע לכאן ונייצר override two-string נחזיר איזושהי מחרוזת שיש לה ID אנחנו רוצים

  8. 03:06

    להחזיר את ה-ID שלנו נחזיר את השם של השיר זה יהיה ה-Name, נחזיר את ה-Performer, זה יהיה משתנה ה-Performer, ולבסוף את ה-Year, והנה יש לנו מחרוזת ב-2-String שמחזירה לנו בדיוק את מה שאנחנו רוצים מבחינת שיר אחד ויחיד.

  9. 03:30

    ואז זה חוסך לי לכתוב את כל המחרוזת הזאת שוב ושוב ושוב. אנחנו חוזרים לפה, זה אמור לעבוד. בואו ניקח את כל זה, נוריד רגע את ה-Add, בואו נריץ ואנחנו רואים את כל השירים שימו לב ל-ID שהתקבל בואו נלך רגע לדאטאבייס שימו לב ה-ID בדאטאבייס הוא underline ID זה בעצם מה שמונגו db יוצרת לי by default אפילו שאני

  10. 04:03

    אמרתי למונגו db שאני רוצה בעצם איזשהו שם אחר שנקרא i גדולה d קטנה מבחינת מונגו די בי זה תמיד underline id pk שהולך להיות underline id בצורה כזאת.

  11. 04:17

    זה עובד בואו ננסה לראות איך אנחנו יכולים להציג רק שיר בודד display one song כאשר אנחנו חייבים בשביל

לקורס המלא: קורס Entity Framework Core

ההרצאה הקודמת: הוספת Documents - למסד הנתונים - MongoDB - Entity Framework

ההרצאה הבאה: עדכון Documents - ממסד הנתונים - MongoDB - Entity Framework

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

  • שימוש ב-Entity Framework - חלק 1
  • מבוא ל-MongoDB
  • התקנה של MongoDB
  • Automation Framework

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

  • קורס דוט-נט - NET Core. - עם Rest API
  • קורס ASP.NET
  • קורס MVC
  • קורס Git ו-GitHub עם Visual Studio