1

我最近从 VS 2017 迁移到 VS 2019。自从升级以来,我一直无法在 VS 中打开任何 .sqlproj 项目,因为它们都拒绝加载错误 -

无法加载文件或程序集“Microsoft.SqlServer.Management.SqlParser,Version=15.100.0.0,Culture=neutral,PublicKeyToken=89845dcd8080cc91”或其依赖项之一。该系统找不到指定的文件。

这是有趣的部分。融合日志告诉我——

LOG:使用 C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config 中的机器配置文件。
日志:后策略参考:Microsoft.SqlServer.Management.SqlParser,版本=15.100.0.0,文化=中性,PublicKeyToken=89845dcd8080cc91
日志:GAC 查找不成功。
日志:尝试下载新的 URL file:///c:/program files (x86)/microsoft visual studio/2019/enterprise/common7/ide/extensions/microsoft/sqlcommon/130/Microsoft.SqlServer.Management.SqlParser.dll .
LOG:程序集下载成功。尝试设置文件:c:\program files (x86)\microsoft visual studio\2019\enterprise\common7\ide\extensions\microsoft\sqlcommon\130\Microsoft.SqlServer.Management.SqlParser.dll
日志:进入运行-源设置阶段。
日志:程序集名称为:Microsoft.SqlServer.Management.SqlParser,版本=13.100.0.0,文化=中性,PublicKeyToken=89845dcd8080cc91
警告:比较程序集名称导致不匹配:主要版本
错误:程序集引用与程序集不匹配找到定义。

我把它读成:

  1. 我需要加载这个 dll 的第 15 版
  2. 它不在 GAC 中
  3. 我将在 ...sqlcommon\130 目录下查看
  4. 我找到了dll
  5. 这是错误的版本,13 不是 15

我可以看到 c:\program files (x86)\microsoft visual studio\2019...\sqlcommon\150 目录下的 dll(我认为)应该是正确的版本。任何人都知道为什么它会探测“错误”目录,我怎样才能让它在正确的目录中查找?

任何指向正确方向的指针都将不胜感激。

4

0 回答 0