Jurnalning o'zi ILogger ob'ekti bilan ifodalanadi. Ushbu interfeys uchta usulni belgilaydi: BeginScope: Bu usul logger uchun ba'zi qamrovni ifodalovchi IDisposable ob'ektini qaytaradi. Bunday holda, MyLogger klassi IDisposable interfeysini amalga oshiradi, shuning uchun bu usulda biz ushbu qiymatni - ya'ni joriy ob'ektni qaytaramiz. IsEnabled: ro'yxatga oluvchi foydalanish uchun mavjudligini ko'rsatuvchi rost yoki yolg'onni qaytaradi. Bu erda siz turli xil mantiqni o'rnatishingiz mumkin. Xususan, bu usulga LogLevel obyekti uzatiladi va biz, masalan, ushbu obyektning qiymatiga qarab loggerdan foydalanishimiz mumkin. Ammo bu holda, biz faqat rostni qaytaramiz, ya'ni logger har doim mavjud. 3. Ro'yxatga olish (Loglash) provayderlari 3-si Jurnal: Bu usul jurnalga yozishni amalga oshirish uchundir. U beshta parametrni oladi: EventId: voqea identifikatori TSstate: xabarni saqlaydigan ba'zi davlat ob'ekti Exception: istisno haqida ma'lumot formatter: oldingi ikkita parametrdan foydalanib, jurnalga yozish uchun haqiqiy xabarni olish imkonini beruvchi formatlash funktsiyasi. Joriy dastur matn fayliga yozadi va konsolga chiqadi, lekin, albatta, jurnalga yozish harakatlari boshqacha bo'lishi mumkin.Ushbu amalga oshirishda MyLogger jurnali klassi logging provayderi sinfiga joylashtirilgan sifatida aniqlanadi, ammo bu shart emas. Siz logger sinfini alohida belgilashingiz mumkin. 3. Ro'yxatga olish (Loglash) provayderlari Masalan bizga quyidagi model berilgan bo`lsin 3. Ro'yxatga olish (Loglash) provayderlari Provayderni local qo`llash Keling, ma'lumotlar konteksti uchun loglashni qo'llaymiz: 3. Ro'yxatga olish (Loglash) provayderlari GetService() usulidan foydalanib, biz o'rnatilgan ILoggerFactory xizmatini olamiz, unga MyLoggerProvider provayderimizni AddProvider() usuli orqali o'tkazamiz. Ilova ishga tushganda esa konsolda barcha operatsiyalar haqida batafsil ma'lumotlar ko'rsatiladi. :
Do'stlaringiz bilan baham: |