NuGet是Visual Studio常用的一个工具,而在2022版本中,在软件的“选项”中NuGet会有“包源映射”这么一个选项,在2019版本却没有这个选项,如下图:
最开始没怎么注意,也不知道之前有没有提示“包源映射已关闭”,好像也不影响插件的下载,但在发现这个问题后,按照常理,软件里的设置不正确肯定会有影响,然后就开始在网上找解决方法,有说包源映射关闭后,编译会出错,解决的方法是找到软件的NuGet配置文件去修改,一开始我尝试去修改,却感觉不怎么对,别人的包源地址和我的地址对不上,配置代码也有些不一样,然后官方给出的也是修改配置文件,给出的示例也是代码有相差,改不了呀!
在同一台电脑里,2019没问题,2022去出现问题,但又想用2022版本,因为在扩展里安装Prism框架模板的时候,用2019版本在扩展里面找,一直转圈圈,不得以,加装2022版本,装上后一查找就出来了,就觉得2022还是有点不一样的。
在公司的电脑里和在家里电脑是相同的问题,就想这是不是同时安装两个版本可能会出现的问题,我是先装的2019版本,再装2022版本,不知道只装2022版本的人有没有这个问题。
至此先来个简单粗暴的方法,先更新看看是不是版本问题,发现是最新版本,不得,就重装软件,全部卸载,只装2022版本,装好后发现问题还在,无语了。脑子开始翁翁的,搞了大半天,没搞出个所以然来,就先凉着吧,暂时不影响写代码,测试出问题再搞,凉了两天,又开始在网上找方法,找了还是像之前找的一样,修改配置文件,好吧!那就一点点的解决,
开始正式解决问题
后来,发现点开旁边“配置”是直接弹出软件“包源映射”,但这里是空的,难道是这里出了问题,
又继续在网上找答案,最后对比了一下配置文件,应该包源映射这里设置的就是对应配置文件里的地址,“程序包源”里原来有两个“源”
“包源映射”里有添加,发现就是程序包源里的两个选项,一开始不知道怎么添加,这个“包模式”该怎么填。
尝试了好几次还是不行,最终在官方的示例中找到了答案,
发现这里<package pattern="*" />和<package pattern="Contoso.*" />应该就是包模式所要填的内容,那么问题又来了,Contoso这个和我软件里的Microsoft Visual Studio Offline Packages应该不是同一个,然后再翻看官方示例发现以下这么个东西,
到此感觉应该是对上了,就动手设置如下:
为什么是这么填,看官方的语法解释
再返回NuGet管理器查看,果然正常了。
至此,经过一层一层的去找问题所在和解决方法,困绕了好几天的问题终于解决了,在没有直接手动修改配置文件的情况下解决了问题。
版权归原作者 纯野生的小程序猿 所有, 如有侵权,请联系我们删除。