2017-02-28 55 views
-2

'System.InvalidOperationException' 類型的異常出現在system.data.dll但在用戶代碼中沒有處理DataReader.GetFieldType(30)返回null

附加信息:DataReader.GetFieldType(30)返回null。

我嘗試了所有在這裏發佈的修補程序在stackoverflow但它似乎不起作用。

我正在處理有關SQLServer數據庫中的地理問題。對於其他數據類型,我沒有任何問題,但是當列已經具有地理位置時。它產生一個錯誤。

我嘗試將Microsoft.SqlServer.Types.dll放入bin文件夾並在項目中引用它。發生相同的錯誤。

{ 「消息」: 「發生錯誤」。, 「ExceptionMessage」: 「DataReader.GetFieldType(30)返回null。」, 「ExceptionType」: 「System.InvalidOperationException」, 「在System.Data.ProviderBase.SchemaMapping..ctor(DataAdapter適配器,DataSet)上的System.Data.ProviderBase.SchemaMapping.SetupSchemaWithKeyInfo(MissingMappingAction mappingAction,MissingSchemaAction schemaAction,Boolean gettingData,DataColumn parentChapterColumn,Object chapterValue)上的StackTrace「:」 Data.DataTable,DataReaderContainer dataReader,Boolean keyInfo,SchemaType schemaType,String sourceTableName,Boolean gettingData,DataColumn parentChapterColumn,Object parentChapterValue)\ r \ n在System.Data。在System.Data.Common.DataAdapter.FillMapping(DataSet數據集,DataTable數據表,字符串srcTable)中的Common.DataAdapter.FillMappingInternal(DataSet數據集,DataTable數據表,字符串srcTable,DataReaderContainer dataReader,Int32 schemaCount,DataColumn parentChapterColumn,Object parentChapterValue)\ r \ ,DataReaderContainer dataReader,Int32 schemaCount,DataColumn parentChapterColumn,Object parentChapterValue)\ r \ n at System.Data.Common.DataAdapter.FillFromReader(DataSet dataset,DataTable datatable,String srcTable,DataReaderContainer dataReader,Int32 startRecord,Int32 maxRecords,DataColumn parentChapterColumn,Object (System.Data.Common.DataAdapter.Fill(DataTable [] dataTables,IDataReader dataReader,Int32 startRecord,Int32 maxRecords)\ r \ n \ System.Data.Common.LoadAdapter.FillFromReader(DataTable [] dataTables ,IDataReader dataReader,Int32 startRecord,Int32 maxRecords)\ r \ n在System.Data.DataTable.Load(IDataReader reader,LoadOption loadOption,Fi在Arbiter.Helpers.SqlHelper.RetrieveT \ r \ n at Arbiter.Core.BaseHelper.ExecuteReader()\ r \ n下的System.Data.DataTable.Load(IDataReader reader)\ r \ n \ r \ n GjenesisServices.Models.DataAccessLayer`1.Retrieve(String command,Object [] parameters)

+0

添加調用代碼將大大提高你獲得的機會一個有用的答案。 –

+0

如果您可以共享代碼,您將如何查詢sql server中設置的列的數據和數據類型,這將有助於我們更好地理解問題。 –

+0

我更新了我的問題。我不知道是哪一個觸發了一個錯誤。謝謝! –

回答

-1

我已經解決了這個問題。

Microsoft.SqlServer.Types的參考應該是對GAC

另外,把信息在web.config中

這固定我的問題