
הטקסט המלא של הדקות הראשונות בהרצאה «News Service» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
טוב חברים אני רוצה להתחיל להראות לכם נושאים מתקדמים בראוטינג אבל כדי שזה יצליח אני צריך קודם כל לסדר את כל הנושא של החדשות כי כרגע כל החדשות שלנו זה hardcoded ואני רוצה להראות לכם בעיה שיש בראוטינג מתקדם לדוגמה שאני יכול לכתוב פה 55 ו-enter וזה יראה לי את החדשות מספר 55 למרות שבפועל אין כאלו הנה
אתם רואים 66 הנה דוגמה לבעיה שאני כותב פה חדשות מספר 66 והוא מראה לי אותן למרות שבפועל אין חדשות כאלו אז אני רוצה לפתור את הבעיות המתקדמות של הראוטינג אבל כדי להתחיל לעשות את הפתרון של בעיות מתקדמות אני חייב לסדר את החדשות שיהיה לי עם מה לעבוד מסודר שימו לב כרגע זה hardcoded גם רשימת החדשות היא hardcoded וזה ממש לא נכון לעבוד ככה אז אנחנו כבר מקצוענים
אנחנו רוצים ש-news list רשימת החדשות תהיה לא ככה רשימה קבועה ב-HTML אלא יהיה לנו סרוויס כדי שיהיה לנו סרוויס אנחנו גם רוצים שיהיה לנו מודל או בייקט אחד של מה זה חדשות אז אני עושה פה ctrl v עושה v single news כאילו מה זה חדשה בודדת single news יהיה לנו פה news id יהיה לנו פה news text שזה למעשה title news title נקרא לזה
ויהיה לנו product ID שזה המוצר המוזל ויהיה לנו פה ה-body שלו use body יופי הלאה עכשיו אני עושה סרוויס של חדשות אני אקרא לו new service עכשיו תיאורטית ה-new service הזה אמור היה לקחת דברים מהשרת אבל אני לא רוצה עכשיו להסתבך עם ליצור טבלה בשרת ליצור Web API Entity Framework אבל אני לא רוצה להסתבך וליצור טבלה בשרת אחרי זה Entity
Framework בצד של השרת אחרי זה קונטרולר אחרי זה לעשות פה htp-get אני עכשיו לא רוצה להתעסק בזה אני פשוט יוצר מערך של חדשות כי כבר איך לעשות htp-get כבר עשינו בהרצאות קודמות כששלפנו רשימת מוצרים מהשרת אז אני עושה פה public news list שזה יהיה בעצם מערך מסוג single news מערך יופי עכשיו כדי להתחיל את המערך הזה אני יכול לעשות
קונסטרקטור ובפנים להתחיל את המערך במקום זה אני אני יכול ישר בזמן ההכרזה הישר גם להתחל אותו New Array, שימו לב בגלל שזה Single News אני חייב לעשות פה ככה ולהעתיק את ה-Single News, אין הבדל בין אריי של סינגל ניוז לכתיבה כזאת, זה למעשה כתיבה של אותו דבר וכאן בסוגריים
אני יכול לעשות אותו ריק אבל אני גם יכול לעשות אותו עם אורך כלשהו ואני יכול אפילו להתחל אותו באובייקטים, ישר להתחיל אותו ולתת לו ערכים ראשוניים שיהיו בפנים החדשות אז בואו נעשה את זה, ואני מתחיל להתחיל אותו ודבר האובייקט הראשון חייב להיות מסוג סינגל ניוז כי זה רק הסוג הזה אפשרי ניוז טייטל
הוא הולך להיות מה שכתבנו פה hardcoded אנחנו מעתיקים אותו מכאן ואפשר למחוק אותו מכאן product id ו-news body product id אני לוחץ ctrl tab כל פעם 0 זה אומר שאין מוצר מוזל ו-news body זה אותו דבר רק אני אוסיף לו הרבה נקודות כי אין לי כוח לכתוב חדשות באמת וזה האובייקט הראשון שלו חדשות, השני שלי, הנה עכשיו
הוא כבר רואה, אינטליסנס כבר רואה, אתם רואים? בגלל שזה לא עירי כללי, אלא עירי מסוג מסוים, הוא יודע איזה שדות צריכים להיות שמה.
ניוס טייטל, מה הטייטל הבא שאני צריך? שה-it's sold out. פרודקט ID 0. קונטרול רווח מאוד נוח והרבה מאוד נקודות. ואחרון, חדשה מספר 3, טייטל, כותרת to-for-sale ומוצר 14. יופי, עשינו עכשיו סרוויס שמחזיר לי את רשימת החדשות ואנחנו יכולים ללכת עכשיו לניוס קומפוננט ולהגיד לו במקום הדבר הזה תעשה לי לולאת NG4
תעשה את זה בלולאה אבל לפני כן אני צריך לקבל אינג'קשן של הסרוויס אני חייב לכתוב פה public או private את השם של הסרוויס שאני רוצה לקבל אותו שכחתי להחליף פה לניוס, לניוס סרוויס וגם שכחתי לעשות לו אינג'קשן חבר'ה במודול שכחתי על אינג'קשן במודול אוי ואבוי זה לא היה עובד לי כל פעם
שעושים סרוויס חדש חייבים לרשום אותו בפורווידורס כל מה שלא קיים במודול לא קיים זאת הקופסה הגדולה שבתוכה שמים את כל הרכיבים של מודול ועשינו את הסרוויס רשמנו אותו במודול ועכשיו אפשר להתחיל להשתמש בו איך אני הולך להשתמש בו אני עשיתי לו אינג'קשן וכאן ברשימה הזאת אני
למעשה הולך להזריק כוכבית NG4 use מתוך news.newslist. אז יש לי פה NG4 שרץ על כל החדשות ועבור כל אחד הוא ישכפל לי את הרכיב הבודד הזה.
אני עכשיו כבר לא צריך את הproduct ID כי אני מעביר רק את המספר של החדשות והוא כבר לבד ידע מתוך הסרוויס לשלוף את המוצר המוזל כי יש לי סרוויס מסודר שנותן את כל המידע. אני כבר לא צריך להעביר את זה כפרמטר, אני מעביר רק את המספר של החדשות, ומי שצריך ישלוף