I MVVMCROSS 8 blev der foretaget betydelige ændringer i logningssystemet. Her er de vigtigste ændringer:
1. skift til Microsoft.Extensions.Logging: MVVMCROSS 8 forladte sin brugerdefinerede logginggrænseflade (`IMVXLOG ') og vedtog` Microsoft.Extensions.Logging' Framework. Denne ændring giver en stabil og bredt understøttet API, hvilket muliggør lettere integration med forskellige tredjeparts loggingudbydere som Serilog [1] [10].
2. Fjernelse af reflektionsafhængighed: I modsætning til den forrige version afhænger MVVMCROSS 8 ikke direkte af tredjepartsudbydere gennem refleksion. I stedet bruger den `Ilogger 'og` iloggerfactory' -grænsefladerne til at styre logging, som kan injiceres i klasser som ViewModels, Services og Repositories [1].
3. Implementeringskrav: Brugere skal nu eksplicit implementere deres egne 'MVXSetup' derivat og tilsidesætte to loggingrelaterede metoder: 'CreateLogProvider' og 'CreateLogFactory'. Dette er en brudskifte fra tidligere versioner, hvor standardimplementeringer blev leveret [4] [10].
4. Tilpasning med tredjepartsudbydere: Brugere kan tilpasse logning ved at installere tredjepartsudbydere som Serilog. Dette involverer implementering af `createlogprovider` og` createlogFactory 'metoder i filen `Setup.cs` til at konfigurere Serilog eller andre udbydere [1] [4].
5. Scoped Logging: Det nye logningssystem giver mulighed for scoped -logning, som automatisk forbinder logfiler med specifikke sammenhænge (f.eks. En ViewModel). Dette gør det lettere at filtrere logfiler baseret på deres kilde [1].
Generelt sigter disse ændringer mod at give et mere fleksibelt og standardiseret logningssystem i MVVMCROSS 8, der tilpasser sig bredere .NET -økosystempraksis.
Citater:[1] https://www.mvvmcross.com/documentation/fundamentals/logging-new
[2] https://www.mvvmcross.com/logging
[3] https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlrf/alter-materialized-view-log.html
[4] https://www.mvvmcross.com/documentation/upgrading/upgrade-to-mvvmcross-80
[5] https://www.mvvmcross.com/documentation/fundamentals/viewmodel-lifecycle
[6] https://github.com/mvvmcross/mvvmcross/blob/develop/changelog.md
[7] https://stackoverflow.com/questions/68075159/mvvm-cross-logging-setup-lass
[8] https://github.com/mvvmcross/mvvmcross/issues/1649
[9] https://github.com/mvvmcross/mvvmcross/releases
[10] https://www.mvvmcross.com/mvvmcross-8.0.0-release/