
Microsoft.Extensions.Configuration.UserSecrets שקוראת מידע מה-App Secret.IConfigurationRoot. כבר הוגדר בה AddJsonFile ל-appsettings.json, ועכשיו מוסיפים AddUserSecrets מסוג Program. כך הוא יודע לאיזה פרויקט הסודות שייכים. מה שלא חסוי, כמו כתובת שרת מרוחק או מיקום הלוגים, נשאר ב-appsettings.public static readonly string ConnectionString וקוראים את המידע פעם אחת, במקום לגשת לאובייקט הקונפיגורציה בכל גישה לדאטה בייס. זה לא חובה, אבל יותר אלגנטי.GiftShop, כי בהגדרת הסוד המפתח היה ConnectionStrings:GiftShop.display all gifts בקונפיגורציה הישנה ורואים שהמתנות מוצגות. אחר כך מעבירים לקונפיגורציה שמכילה גם appsettings וגם App Secrets.not been initialized, כי הסוד נעלם מהפרויקט. המרצה לא יודע למה ומסביר שזה אולי באג. הוא הריץ שוב init ו-set, ואחרי זה הכל עבד.AddUserSecrets היא מצליחה.AppData\Roaming\Microsoft\UserSecrets שהסוד קיים ושהפרויקט מחובר אליו.הטקסט המלא של הדקות הראשונות בהרצאה «שימוש ב-ConnectionString המוגדרת כ-App Secret» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
אז בואו נשתמש באפ סיקרט של הקונקצ'ן סטרינג במקום בקונקצ'ן סטרינג שהייתה באפ סטטינגס ג'ייסון. מה אנחנו צריכים לעשות? דבר ראשון, מה שאנחנו רוצים לבצע זה להתקין פאקג' מיוחד שהתפקיד שלו זה לגשת לאותו אפ סיקרט ולקרוא ממנו מידע.
וזה נקרא install package microsoft.extensions, .configuration.userseekret בואו נעתיק אותו נדביק אותו איפשהו פה שניזכר שיהיה לנו נריץ והוא התקין לנו הדבר הבא שאנחנו רוצים לבצע זה לגשת ולראות איפה היה קוד שקורא את ה-connection string וזה היה ב-appconfig בואו נסתכל רגע על appconfig AppConfig זאת מחלקה חשובה
שמגדירה את הקונפיגורציה ברמת האפליקציה שלנו ויש לנו פה אובייקט iConfigurationRoot שמחזיק את הקונפיגורציה של הפרויקט וכאן אמרנו לו תשמע מכלול הקונפיגורציה נמצא בappsettings.json ואמרנו לו add json file כלומר יכול להיות שיש לנו פה כל מיני דברים שנמצאים בקובץ הזה זה בסדר אבל בנוסף אנחנו יכולים להגיד
לו Add User Secrets, אין בעיה שתקרא את הקובץ הזה, יכול להיות שיש פה כל מיני דברים שהם לא קשורים לSecrets או לדברים חסויים של האפליקציה, לדוגמה הכתובת לשר"פ מרוחק שאני רוצה לגלוש עליו, אז זה לא משהו כל כך חסוי, סיסמאות ומפתחות זה כן, אז אני לא אשאיר אותם כאן, אני אשים אותם כSecrets וזה פונקציה ג'נריק, אז אני אומר לו פרוגרם,
פרוגרם זאת מחלקת הפרוגרם שלנו, ואז לפי מחלקת הפרוגרם הוא יודע לאיזה פרויקט אנחנו שייכים, והולך לכאן וטוען מפה את