
SongsService.private readonly IMongoCollection<Song> _songs. הקולקשן הוא זה שמבצע את הפעולות על המסד, בלי שפת SQL, כי זה NoSQL.new MongoClient(AppConfig.ConnectionString) יוצר אובייקט שיודע להתחבר למסד.IMongoDatabase, מתקבל מ-mongoClient.GetDatabase עם שם המסד מ-AppConfig.DatabaseName, שהוגדר קודם._songs = mongoDatabase.GetCollection<Song>("songs"). כאן קובעים את שם הקולקשן. הוא ברבים ובאותיות קטנות, וזה המקביל לטבלה.Dispose, ולכן אין צורך לממש IDisposable.הטקסט המלא של הדקות הראשונות בהרצאה «יצירת מחלקת Service MongoDB Entity Framework» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
אנחנו עוברים לבנות סרוויס, בואו נייצר קלאס בתוך תיקיית סרוויסס ונקרא לקלאס סונגס סרוויס. נטפל בניימספייס ויש לנו קלאס. מה אנחנו רוצים להגדיר?
אנחנו רוצים להגדיר פרייבט ריד אונלי, משתנה מסוג iMongo קולקשן שהוא מטפל במודל סונג. בואו נקרא לו underline songs. זה בעצם ה-collection שלנו, כי אנחנו יודעים שמונגו דיבי יש לה קולקשנים.
על ידי הקולקשן אנחנו מבצעים פעולות. שימו לב, אין לנו פה את שפת sql כי אנחנו ב-no sql database. בואו נייצר קונסטרקטור, סיטור, ואנחנו רוצים קודם כל לייצר בקונסטרקטור מונגו קליינט, מונגו קליינט,
new מונגו קליינט. בעצם איזשהו אובייקט שיודע להתחבר לדאטאבייס. ניתן לו appconfig.connectionstring והוא יודע לבצע התחברות לדאטאבייס.
הדבר הבא שאנחנו רוצים, אנחנו רוצים לייצר i mongo.database בצורה כזאת, נקרא לו mongo.database שווה mongo.client האובייקט שלנו נקודה getDatabase. שוב פעם, אנחנו נותנים לו app.database.app.config.database.name בכדי שהוא בעצם יביא לנו כל מה שצריך מבחינת ה-database שלנו.
הנה הגישה ל-database.name שמקודם הגדרנו. ולבסוף אנחנו ניגשים ל-songs ומכניסים לתוכו את mongo.database.get.collection. מכל ה-database אני רוצה לקבל collection של songs.
סוג סונג והשם שלו זה סונגס כאן אנחנו מחליטים מה השם של הקולקשן שלנו והגיוני שאם הוא מטפל או מכיל מגוון של שירים אז הוא יהיה סונגס זה המקביל לטבלה שימו לב אותיות קטנות בואו נראה האם לאנדרליין סונגס