Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon 关于记录


关于记录


在MVVMCross 8中,对记录系统进行了重大更改。这是关键更改:

1。切换到microsoft.extensions.logging:mvvmcross 8放弃了其自定义记录接口(`imvxlog`),并采用了`Microsoft.extensions.logging`框架。此更改提供了稳定且广泛支持的API,可以更轻松地与Serilog [1] 10等各种第三方记录提供商集成。

2。删除反射依赖性:与以前的版本不同,MVVMCross 8并不直接通过反射依赖第三方提供商。取而代之的是,它使用`ilogger'和`iloggerFactory`接口来管理日志记录,可以将其注入诸如ViewModels,Services和Servostories之类的类[1]。

3.实施要求:用户现在必须明确实现自己的“ mvxsetup”导数,并覆盖两种与日志记录相关的方法:`createLogProvider`和createLogFactory'。这是提供默认实现的以前版本的破裂[4] [10]。

4.与第三方提供商进行自定义:用户可以通过安装第三方提供商(例如Serilog)来自定义日志记录。这涉及在`setup.cs文件中实现`createLogProvider''和`createLogFactory`方法来配置Serilog或其他提供程序[1] [4]。

5。范围日志记录:新的记录系统允许进行范围的日志记录,从而自动将日志与特定上下文相关联(例如,ViewModel)。这使得基于其源[1]过滤日志变得更加容易。

总体而言,这些变化旨在在MVVMCross 8中提供更灵活和标准化的伐木系统,并与更广泛的.NET生态系统实践保持一致。

引用:
[1] https://www.mvvmcross.com/documentation/fundamentals/logging-new
[2] https://www.mvvmcross.com/logging
[3] https://docs.oracle.com/en/database/oracle/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-class
[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/