关于MvvmCross v6.0.1与MvvmCross.Core等NuGet包引用方式的疑问
关于MvvmCross v6.0.1包引用的建议
嘿,这个问题我刚好踩过类似的坑,结合MvvmCross 6.x的版本变化给你梳理清楚:
首先明确结论:你应该直接引用统一的MvvmCross v6.0.1 NuGet包,而不是分开引用MvvmCross.Core和MvvmCross.Platform。原因如下:
- 版本结构的重大变化:MvvmCross团队在6.x版本重构了包体系,把原本拆分的
MvvmCross.Core和MvvmCross.Platform合并成了单一的MvvmCross主包。旧的拆分包在6.x之后已经不再作为独立包更新,继续用5.7.0的旧包和6.x的其他组件混用,必然会出现版本不兼容、API冲突的问题。 - 避免依赖混乱:模板安装的是5.7.0版本的拆分包,和你要使用的6.0.1版本属于不同的包结构体系,混用不同版本、不同结构的包,会导致项目依赖树混乱,后续调试和维护都会非常麻烦。
- 简化依赖管理:统一的主包包含了原本Core和Platform的所有核心功能,安装一个包就能搞定核心依赖,不用再操心多个包的版本对齐问题。
给你具体的操作建议:
- 先卸载项目中已安装的
MvvmCross.Core(5.7.0)和MvvmCross.Platform(5.7.0)包; - 通过NuGet包管理器安装
MvvmCrossv6.0.1; - 检查项目中的命名空间引用:部分原本在
MvvmCross.Core或MvvmCross.Platform下的类型,已经迁移到MvvmCross主命名空间下,需要调整对应的using语句。
内容的提问来源于stack exchange,提问作者Klaus Nji
相关产品推荐
相关产品推荐

