在 GAC 中安装 Microsoft.SqlServer.Types

Posted

技术标签:

【中文标题】在 GAC 中安装 Microsoft.SqlServer.Types【英文标题】:Install Microsoft.SqlServer.Types in GAC 【发布时间】:2021-07-16 16:04:38 【问题描述】:

如何在 GAC (C:\Windows\assembly\GAC_MSIL) 中安装 Microsoft.SqlServer.Types 程序集。它不见了。

运行 rdlc 报告后出现错误。它是基于 MVC 的应用程序-

无法加载文件或程序集“Microsoft.SqlServer.Types, Version=12.0.0.0,Culture=neutral,PublicKeyToken=token' 或其之一 依赖关系。

似乎应用程序正在 GAC 中查找 Microsoft.SqlServer.Types 程序集。我知道如何在项目文件夹中使用 nuget 进行安装,但我希望在 GAC 中使用它。

【问题讨论】:

您可以使用GacUtil.exe 和/i 开关将其安装到GAC。 但是为什么您要尝试将它们添加到 GAC?您实际上想要做什么,为什么常规包引用(即 dll 在输出文件夹中的最终位置)对您来说不是一个可行的选择? @MarcGravell 实际上我没有在我的项目中安装这个程序集,但我仍然可以像在 GAC 上一样运行报告。我的队友正面临这个问题,他既没有项目文件夹也没有 GAC。所以想把它安装在GAC上。由于我的机器上安装了 sql server,程序集是否有可能在 GAC 中自动安装。我的队友在他的机器上只有 SQL 客户端(SSMS 工作室)。 您应该尽可能避免使用 GAC,因为它在机器之间是不一致的。如果您使用 Nuget 包,那么该程序集将在运行/部署解决方案的任何机器上可用,而无需依赖额外的设置步骤。 @SSD 是的,这些类型可能在某些机器上而不是在其他机器上,这正是您不应该在此处使用 GAC 的原因,而应该添加来自 NuGet 的包引用,此处:nuget.org/packages/Microsoft.SqlServer.Types 【参考方案1】:

不要尝试对其进行 GAC。而是将 NuGet 包添加到您的项目中。

https://www.nuget.org/packages/Microsoft.SqlServer.Types

【讨论】:

以上是关于在 GAC 中安装 Microsoft.SqlServer.Types的主要内容,如果未能解决你的问题,请参考以下文章

powershell 在Gac中安装/删除dll - Powershell

powershell 在Gac中安装/删除dll - Powershell

无法从程序集中加载类型

如何在ubuntu中安装scrapy

如何在 apache2 tomcat6 中安装 ffmpeg 或在 ubuntu 中安装 xampp?

如何在python2.7中安装MySQLdb 在virtualenv中安装