收到"DataReader.GetFieldType returned null."错误。



我设计了一个以.NET 4.5为目标的Windows表单应用程序。 我正在尝试在几个同事的系统上安装程序,并在两个系统上不断收到相同的错误。

System.InvalidOperationException: DataReader.GetFieldType(60) returned null.

该程序基本上从数据库中检索数据并将其存储在Excel文件中。 它对数据执行一些计算,但除了检索几何类型列外,不执行任何计算。

-我尝试在目标系统上安装 ENU\x64\SQLSysClrTypes.msi 和 ENU\x86\SQLSysClrTypes.msi

-我尝试引用Microsoft.SqlServer.Types并将DLL包含在文件中

- 我尝试引用 SqlServerSpatial.DLL

SqlServerSpatial100.DLL但它不允许我添加引用。

我现在找不到其他资源来尝试。 有人有什么想法吗? 谢谢。

我终于能够通过添加对以下内容的引用来使其工作

C:Program Files (x86)Microsoft SQL Server110SharedMicrosoft.SqlServer.Types.dll

并将"复制本地"设置为 true。 奇怪的是,nuget 包在不同的项目中为我工作,但不是这个项目。 无论如何,希望这对某人有所帮助!

最新更新