Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon 使用microsoft.extensions.lognognogy of mvxlog在mvvmcross中有什么好处


使用microsoft.extensions.lognognogy of mvxlog在mvvmcross中有什么好处


在MVVMCross的背景下,将Microsoft.extensions.logging与MVXLOG进行比较时,从后者使用前者出现了一些好处:

1。可扩展性和灵活性:Microsoft.extensions.logging提供了一个高度可扩展的框架,可以轻松地与NLOG,Serilog和Log4net等各种第三方记录提供商进行集成。这种灵活性并非固有地内置在MVXlog中,它在与不同的记录框架中集成的能力更具限制[1] [2]。使用Microsoft.extensions.logging,您可以轻松地在不同的记录提供商之间切换,而无需更改应用程序的代码,从而使其更适合不同的环境和要求。

2。依赖注入支持:Microsoft.extensions.Logging旨在与依赖注入(DI)无缝配合,这是许多现代.NET应用的核心功能,包括使用MVVMCross构建的应用程序。这种集成允许对日志记录组件进行更轻松的单元测试和模拟,这有益于保持可靠的测试覆盖范围[5] [8]。 MVXlog虽然注射可注射,但与Microsoft.extensions.logging的DI框架没有提供相同的集成水平。

3。标准化和社区支持:Microsoft.extensions.logging是.NET生态系统中广泛采用的标准,这意味着它从广泛的社区支持和文档中受益。这种标准化使开发人员更容易理解和实施跨不同项目和平台的登录[2] [11]。相比之下,MVXLOG是特定于MVVMCross的,并且在该框架之外可能不那么广泛地认识或支持。

4。可伸缩性和性能:Microsoft.extensions.logging的架构旨在有效地处理大规模应用程序。它提供了诸如日志过滤和分类之类的功能,可以通过减少不必要的日志输出来提高性能[11]。尽管MVXLOG具有能力,但它可能与Microsoft.extensions.logging中可用的可扩展性和性能优化不符。

5。配置灵活性:microsoft.extensions.logging允许通过各种方式进行配置,包括JSON文件(例如appsettings.json`),该文件提供了一种灵活的方法来管理日志设置而无需重新编译应用程序[5]。这种灵活性在伐木需求可能经常改变的环境中特别有用。

6。日志级别和严重性:两个框架都支持各种日志级别(例如,跟踪,调试,信息,警告,错误),但是microsoft.extensions.logging包括一个额外的``crigints''级级别和``无用于配置目的''级别[11]。这提供了对记录严重程度和配置的更精细控制。

总而言之,虽然MVXLOG是MVVMCross生态系统中有能力的记录解决方案,但Microsoft.extensions.logging提供了更广泛的兼容性,可扩展性和社区支持,使其成为现代.NET应用中登录需求的更广泛的选择。

引用:
[1] https://www.mvvmcross.com/documentation/fundamentals/logging-new
[2] https://putridparrot.com/blog/using-microsoft-extensions-logging/
[3] https://www.mvvmcross.com/documentation/advanced/customizing-using-app-anp-setup
[4] https://learn.microsoft.com/en-us/core/core/logging-events-diarostics/extensions-logging
[5] https://stackoverflow.com/questions/58209076/microsoft-extensions-logging-vs-nlog
[6] https://www.mvvmcross.com/mvvmcross-8.0.0-release/
[7] https://www.mvvmcross.com/documentation/fundamentals/viewmodel-lifecycle
[8] https://stackoverflow.com/questions/46483019/logging-from-static-members-with-microsoft-extensions-logging
[9] https://www.mvvmcross.com/logging
[10] https://stackoverflow.com/questions/17602137/mvvmcross-how-does-this-view-get-get-link-to-the-viewmodel/17602246
[11] https://blog.stephencleary.com/2018/06/microsoft-extensions-logging-part-part-2-types.html