PracticU

יצירת MongoDB - Model
Entity Framework

בלי כתוביותעם כתוביות
PracticU › קורס Entity Framework Core - עבודה עם מסד נתונים בדוט-נט › יצירת MongoDB - Model Entity Framework
מילון מושגים:
MongoDB - מסד נתונים מסוג NoSQL שמאחסן נתונים כמסמכים בפורמט דמוי JSON, בלי מבנה טבלאי קשיח.
Entity Framework - ספריית מיקרוסופט שממפה בין אובייקטים בקוד לבין טבלאות במסד נתונים, ומאפשרת לעבוד עם הנתונים בלי לכתוב SQL ישיר.
פריימוורק - מסגרת תוכנה שמספקת מבנה וכלים מוכנים לפיתוח יישומים, כדי לחסוך כתיבת קוד חוזר.
C# - שפת תכנות מונחית עצמים של מיקרוסופט, המשמשת בעיקר לפיתוח יישומים על פלטפורמת .NET.
מפתח ראשי - עמודה או צירוף עמודות שמזהים באופן ייחודי כל שורה בטבלת מסד נתונים.
מאפיין - תכונה שמצמידים לרכיב ומתארת אותו או את התנהגותו, למשל מאפיין של תגית HTML או שדה באובייקט.
בינארי - ייצוג מידע בבסיס 2 בעזרת הספרות 0 ו-1. גם קובץ הכולל קוד מכונה ולא טקסט קריא.
JSON - פורמט טקסט קריא לייצוג נתונים מובְנים כזוגות מפתח-ערך, נפוץ להחלפת מידע בין שרת ללקוח.

יצירת MongoDB - Model Entity Framework
כדי לעבוד עם MongoDB בפרויקט C# בונים מודל, מחלקה שמתארת מסמך אחד. השיעור בונה מודל של שיר, ומסביר את ה-attributes של MongoDB שעליו.
השלבים העיקריים
1. המחלקה: בתיקיית Models מוסיפים מחלקה Song עם Id (string, לא int, כי ב-MongoDB המזהה מורכב מתווים), Name (string), Performer (string) ו-Year (int). המחרוזות מוגדרות כלא-null בעזרת סימן קריאה.
2. מפתח ראשי: המאפיין [BsonId] מגדיר את המפתח הראשי. BSON הוא Binary JSON, ובחבילת MongoDB שהותקנה יש את ה-attributes.
3. ייצוג כמחרוזת: [BsonRepresentation(BsonType.ObjectId)] על ה-Id. המפתח האמיתי ב-MongoDB הוא אובייקט מסוג ObjectId, אבל בקוד רוצים לעבוד איתו כמחרוזת (בת 24 תווים), וההוראה מאפשרת את זה.
4. שמות השדות ב-JSON: [BsonElement("name")] ועוד performer ו-year, עם אות ראשונה קטנה. ב-C# נהוג שמאפיין public מתחיל באות גדולה, אבל JSON הוא JavaScript Object Notation, ושם המוסכמה היא lowercase camel case.
שימו לב
אין צורך ב-migration או ב-update database. לפי הדובר, כל פעולה על המסד תיצור אותו אם אינו קיים, וזה יופיע בשיעורים הבאים.
בשיעור הבא משתמשים במודל הזה ב-Service.
עכשיו אפשר להגדיר מודל C# מתאים למסמך ב-MongoDB, עם מפתח ראשי ושמות שדות ב-camel case.
השיעור הבא בקורס: יצירת מחלקת Service MongoDB Entity Framework

פרקי ההרצאה: יצירת MongoDB - Model Entity Framework

  1. 00:00

    יצירת מחלקת Song

  2. 00:40

    הגדרת מאפייני השיר

  3. 01:25

    מאפייני BsonId ו-BsonRepresentation

תמלול ההרצאה: יצירת MongoDB - Model Entity Framework

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

  1. 00:02

    הדבר הבא שאנחנו הולכים לבנות זה המודל. בואו נייצר תיקיית מודלס ובתוך המודל נוסיף קלאס סונג שיר אחד. מה יש לשיר? לשיר אנחנו רוצים שיהיה לו איי-די.

  2. 00:21

    איי-די במונגו די-בי זה סטרינג ולא אינט. בואו נקרא לזה איי-די. אנחנו רוצים שיהיה לו סטרינג name. אנחנו רוצים שיהיה לו פרפורמר מהמבצע של השיר, ואנחנו רוצים שיהיה לו year, שנה.

  3. 00:40

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

  4. 01:03

    הפרופרטיז המתאימים קשורים למונגו db והפרופרטיז אומרים כזה דבר. זה אנחנו רוצים שיוגדר כמפתח ראשי. אז אנחנו נותנים לו את המאפיין bsonid.

  5. 01:20

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

  6. 01:38

    וזה מה שאומר שאנחנו ה-PK. מאפיין נוסף שאנחנו רוצים להגדיר עבור ה-ID נקרא ביסון רפרזנטיישן וביסון טייפ מקבל הסוגריים נקודה אובג'קט ID.

  7. 01:55

    זה הוראה שאומרת to allow representation of object ID as a string. זאת אומרת האובייקט האמיתי של המפתח הראשי

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

ההרצאה הקודמת: יצירת פרויקט חדש - לעבודה עם MongoDB

ההרצאה הבאה: יצירת מחלקת Service - MongoDB - Entity Framework

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

  • The V Model
  • שימוש ב-Entity Framework - חלק 1
  • מבוא ל-MongoDB
  • יצירת מודל - Product Model

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

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