从MVVMCROSS 5升级到6.4.2涉及几个关键变化和潜在的陷阱。以下是一些详细的注意事项,可以帮助您浏览此过程:
1。.NET标准升级**
MVVMCross 6要求您的应用程序使用.NET Standard 2.0作为基本库。这意味着您需要将项目升级到.NET标准2.0,然后再进行MVVMCross升级。此更改对于与MVVMCross的较新版本[1]至关重要。2。ioc更改**
- 名称空间更改:所有与IOC相关的代码已从“ mvvmcross.platform.ioc”移动到`mvvmcross.ioc`。这意味着您需要更新使用语句以及对IOC类的任何引用。- 容器名称更改:“ mvxsimpleioccontainer”现在命名为``mvxioccontainer''。您应该在代码[1]中更新对该容器的任何实例或引用。
3。记录系统更改**
- 删除“ mvxtrace”:MVVMCross 6中已删除了`mvxtrace'类和相关的记录功能。您将需要采用新的日志记录系统,该系统已记录在MVVMCross文档中。- 名称空间更改:记录名称空间已从`mvvmcross.platform.logging'更改为`mvvmcross.logging`和`mvvmcross.core.platform.logproviders`更新您的代码以反映这些更改[1]。
4。兼容性和依赖关系**
确保您所有的项目依赖性都与MVVMCross 6.4.2兼容。这包括检查Xamarin.Forms的版本,如果您使用的是Messenger或Concisivility等其他MVVMCROSS插件[2] [6]。5。测试和调试**
升级后,彻底测试您的应用程序,以确保所有功能都可以按预期工作。特别注意发生了重大变化的领域,例如IOC和Logging。6。文档和社区支持**
阅读正式文档,并仔细阅读任何发行说明。如果您遇到问题,请考虑通过打开拉动请求或向论坛和讨论小组寻求帮助[1]来为MVVMCROSS社区做出贡献。通过仔细解决这些区域,您可以最大程度地减少潜在的陷阱,并确保从MVVMCROSS 5到6.4.2的更光滑的过渡。
引用:[1] https://www.mvvmcross.com/documentation/upgrading/upgrade-to-mvvmcross-60
[2] https://www.nuget.org/packages/mvvmcross/6.4.2
[3] https://www.reddit.com/r/dotnetmaui/comments/130uath/porting_xamarin_native_to_maui/
[4] https://stackoverflow.com/questions/68214000/mvvmcross-upgrade-from-6-4-2-to-8-0-1
[5] https://www.reddit.com/r/fortinet/comments/18rp90o/dont_upgrade_to_fortios_742_on_fortigate/
[6] https://www.nuget.org/packages/mvvmcross.forms/6.4.2
[7] https://github.com/mvvmcross/mvvmcross/issues/3937
[8] https://stackoverflow.com/questions/73128508/how-to-to-load-load-plugins-when to-to-to-mvvmcross-6-4-4-2-from-5-6-2