本文由网友投稿。
作者:一位极少露面的靓仔
原文标题:WPF版本问题排坑记录
原文链接:https://www.cnblogs.com/akwkevin/p/17288814.html
本文由网友投稿,文中示例仓库:Dotnet9WPFControls,使用介绍:WPF|快速添加新手引导功能(支持MVVM),示例正常运行扣1,失败扣0,并留下吐嘈....
原文如下:
先说结论:珍爱生命,远离不明第三方组件库【站长:。。。】
问题描述
今早摸鱼的时候看见狼哥一个开源项目Dotnet9WPFControls,我非常感兴趣!结果clone下来之后,没跑起来?嗯?我姿势不对?好!我再跑!结果还是run不起来,无奈求教狼哥本人,狼哥亲自clone之后没在他的机器上重现我这个bug。因为报错的这个库是nuget拉下来的,我们先看报错截图:
排坑之旅
第三方库是:"MaterialDesignThemes.Wpf”
问题已经很明显了,是因为库的依赖出现的程序集版本不对所引起的,我们只需要找到这个PresentationFramework然后找到相应版本就行了,问题似乎很清晰明了。
好的,我们按照上述思路,开始操作:
先查询当前所引用的PresentationFramework在本地机器上的存储位置:
于是我们进入此文件目录:
一开始并没有6.0.2和6.0.16这个文件夹,这是后面我解决这个问题所下载的。
然后我们点进文件夹,发现:
这个PresentationFramework就是报错的6.0.0版本,于是按照我们上述的解决思路,我们只需要将这个替换成6.0.2版本问题不就解决了吗?
新的问题来了
于是说干就干,但新的问题来了,6.0.2版本的PresentationFramework我去哪里找?
我观察了下PresentationFramework的其他几个类似dll,发现这个6.0.0是和 .net sdk的版本挂钩的,也就是说我下载net6.0.2的sdk就可以找到PresentationFramework6.0.2版本。
于是前去微软官网下载:
这里下载请注意,我经过测试,下载右边的桌面运行时是没用的,必须下载左边的。
解决他
下载完后,我们怎么替换引用呢?
很简单,我想到了一个很狗但是非常方便的方法(因为我只是想运行这个项目,不涉及release所以可以这样做,但如果你需要release请务必禁止这样做!)
没错,就是文件重命名,下载完6.0.2版本后我们的引用文件夹长这样:
我们来个狸猫换太子!
把6.0.2改成6.0.0:
最后,重启项目,完美解决并成功运行:
总结
站长这也是新电脑环境,运行正常,欢迎留言讨论。
Comments