最近、VS 2017 から VS 2019 に移行しました。アップグレードして以来、VS で .sqlproj プロジェクトを開くことができませんでした。すべてのプロジェクトがエラーでロードを拒否しているためです。
ファイルまたはアセンブリ 'Microsoft.SqlServer.Management.SqlParser, Version=15.100.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' またはその依存関係の 1 つを読み込めませんでした。システムは、指定されたファイルを見つけることができません。
ここが興味深い部分です。融合ログは私を示しています -
ログ: C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config のマシン構成ファイルを使用しています。
ログ: ポリシー後の参照: Microsoft.SqlServer.Management.SqlParser、Version=15.100.0.0、Culture=neutral、PublicKeyToken=89845dcd8080cc91
ログ: GAC ルックアップに失敗しました。
ログ: 新しい URL ファイルのダウンロードを試みています:///c:/program files (x86)/microsoft visual studio/2019/enterprise/common7/ide/extensions/microsoft/sqlcommon/130/Microsoft.SqlServer.Management.SqlParser.dll .
ログ: アセンブリのダウンロードは成功しました。ファイルのセットアップを試みています: c:\program files (x86)\microsoft visual studio\2019\enterprise\common7\ide\extensions\microsoft\sqlcommon\130\Microsoft.SqlServer.Management.SqlParser.dll
ログ: run- from- を入力していますソースセットアップフェーズ。
ログ: アセンブリ名: Microsoft.SqlServer.Management.SqlParser、Version=13.100.0.0、Culture=neutral、PublicKeyToken=89845dcd8080cc91
WRN: アセンブリ名を比較すると、不一致が発生しました: メジャー バージョン
ERR: アセンブリ参照がアセンブリと一致しませんでした定義が見つかりました。
私はこれを次のように読みます:
- この dll のバージョン 15 をロードする必要があります
- GACにはありません
- ...sqlcommon\130 ディレクトリの下を調べます
- dllを見つけました
- それは間違ったバージョンです。15 ではなく 13 です。
c:\program files (x86)\microsoft visual studio\2019...\sqlcommon\150 ディレクトリの下に dll が表示されますが、これは (私が思うに) 正しいバージョンである必要があります。なぜ「間違った」ディレクトリを調べているのか、正しいディレクトリを調べるにはどうすればよいのか、誰にも分かりますか?
正しい方向への指針は非常に高く評価されます。