我已经看到有关此问题,但并非完全符合我的情况:
我已经创建了一项服务。它在也是Web服务器的一台服务器上运行。它查看运行SQL Server的远程服务器以收集要运行的数据。
从其中一个表获取数据时,会有一列具有地理数据类型的列。在正在运行的Web应用程序中,没有引用作为Microsoft.SqlServer.Types.dll
的表格的问题。
在Web服务器上运行的服务创建并出错:
DataReader.GetFieldType(22)返回null。
在此远程计算机上执行选择语句时,甚至引用了相同的dll。
答案 0 :(得分:0)
很奇怪。该查询是一个非常基本的“选择* from ..... where .....”
我一直在搜索,并发现了一条建议从以下文件夹设置对Microsoft.SqlServer.Types.dll的引用的帖子:
C:\ Program Files \ Microsoft SQL Server \ 110 \ Shared
我进行了更改。将带有新dll的重新编译的服务复制到Web服务器上的已安装文件夹中,现在它可以完成而不会出现错误。
我没有创建原始代码,所以我不确定原始dll引用来自哪里。