从我的数据库中检索空间数据时出错

时间:2021-06-17 19:37:11

标签: vb.net sql-types

我花了2天的时间追这个一个又一个,尝试了几种解决方案(详情如下)。

问题。从 Microsft SQL 数据库检索地理数据时出现错误 DBServer 例程 OpenDataSet 失败,错误 DataReader.GetFieldType(3) 返回 null。

据我了解,这通常是因为项目无法加载或访问 Microsoft.SqlServer.Types,因此无法有效解释返回的数据

我尝试过的;

  1. 删除并阅读参考资料。
  2. 将程序集设置为复制本地
  3. 通过 Nuget (v14.0) 删除和重新安装
  4. 在 web.config 中引用所述程序集
  5. 在 Global.asax 中添加一个实用程序类,然后在 Application_Start 上调用它以加载其他依赖文件 LoadNativeAssembly(nativeBinaryPath, "msvcr120.dll") LoadNativeAssembly(nativeBinaryPath, "SqlServerSpatial140.dll")

无论我是在本地运行(不是关键问题)还是在 Azure vps(SqlServer 网络版)上运行,都会发生错误。

我调用的返回数据的存储过程工作正常。 (其实这个代码是一个搬家的项目,老的vps开起来就可以用了,所以很可能是配置问题,我上面做的都是白费力气。但是联系不上原来的开发者,也没有任何关于这是如何工作的注释。)

0 个答案:

没有答案