【问题标题】:asp.net mvc 4: SqlServerSpatial110.dll errorasp.net mvc 4:SqlServerSpatial110.dll 错误
【发布时间】:2017-08-16 14:11:38
【问题描述】:

我在我的项目中使用 MVC4 和 EF5 CodeFirst。我可以从 DB 中选择记录,但是当我尝试创建新记录时,出现此错误:

无法加载 DLL 'SqlServerSpatial110.dll':找不到指定的模块。 (HRESULT 异常:0x8007007E)

此错误发生在我的主机中,并且在 localhost 中它可以正常工作。 即使我将 system32 中的这个 dll 添加到我的项目中,并使用下面的代码说引擎使用我的 bin 中的 dll:

SqlServerTypes.Utilities.LoadNativeAssemblies(Server.MapPath("~/bin"));

但它还没有工作。

【问题讨论】:

    标签: asp.net-mvc asp.net-mvc-4 asp.net-web-api


    【解决方案1】:

    您是否尝试将 SqlServerSpatial110.dll 的属性设置为“复制到输出目录 = 始终复制”?根据错误,我假设服务器上不存在这个特定的 dll。

    【讨论】:

    • 我做了,当我将它发布到 bin 文件夹时。我在本地主机和主机中使用 sqlserver 2012
    • 您是否检查了服务器上安装的 SQL Server CLR 类型的版本?也许你有一个 64 位服务器并且安装的版本是 32 位。或者您的解决方案的目标可能与服务器的类型不同:)
    • 我要求服务器支持团队检查这是 dll 是否存在于服务器的 system32 或 system64 上。但他们告诉我们不能在主机上安装它。所以我必须将 dll 放在我的 bin 文件夹中...
    • 另一个想法/备注:SqlServerSpatial110.dll 是一个非托管库。也许看看这个库的位置应该是一个好主意:)
    • 感谢您的考虑。我通过将我的 EF5 更新到 EF6 来解决它... :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-04
    • 1970-01-01
    • 2013-02-27
    • 1970-01-01
    • 2013-02-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多