问题描述
我们的 c# 应用程序使用 sqlDataAdapter 从数据库中获取数据以显示在报告中。出于某种原因,当 BUILTIN/Administrators 语言是英式英语时,sqlDataAdapter.Fill 方法会抛出低于 sqlException 的情况。当它是英语时,它工作正常。我调试了我的 C# 代码,但不知道为什么会发生这种情况。有人能帮我克服这个例外吗?
{System.Data.sqlClient.sqlException (0x80131904): Error converting data type nvarchar to datetime.
at System.Data.sqlClient.sqlConnection.OnError(sqlException exception,Boolean breakConnection,Action`1 wrapCloseInAction)
at System.Data.sqlClient.sqlInternalConnection.OnError(sqlException exception,Action`1 wrapCloseInAction)
at System.Data.sqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj,Boolean callerHasConnectionLock,Boolean asyncclose)
at System.Data.sqlClient.TdsParser.TryRun(RunBehavior runBehavior,sqlCommand cmdHandler,sqlDataReader dataStream,BulkcopySimpleResultSet bulkcopyHandler,TdsParserStateObject stateObj,Boolean& dataReady)
at System.Data.sqlClient.sqlDataReader.TryConsumeMetaData()
at System.Data.sqlClient.sqlDataReader.get_MetaData()
at System.Data.sqlClient.sqlCommand.FinishExecuteReader(sqlDataReader ds,RunBehavior runBehavior,String resetoptionsstring,Boolean isInternal,Boolean forDescribeParameterEncryption,Boolean shouldCacheForAlwaysEncrypted)
at System.Data.sqlClient.sqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior,Boolean returnStream,Boolean async,Int32 timeout,Task& task,Boolean asyncWrite,Boolean inRetry,sqlDataReader ds,Boolean describeParameterEncryptionRequest)
at System.Data.sqlClient.sqlCommand.RunExecuteReader(CommandBehavior cmdBehavior,String method,taskcompletionsource`1 completion,Boolean& usedCache,Boolean inRetry)
at System.Data.sqlClient.sqlCommand.RunExecuteReader(CommandBehavior cmdBehavior,String method)
at System.Data.sqlClient.sqlCommand.ExecuteReader(CommandBehavior behavior,String method)
at System.Data.sqlClient.sqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset,DataTable[] datatables,Int32 startRecord,Int32 maxRecords,String srcTable,IDbCommand command,CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataTable[] dataTables,CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataTable dataTable)
at ReportViewer.ReportViewer.CreateReportDataSource(ReportRequest reportRequest,String selectString,ReportParameterInfoCollection parameters,DataSet dataSet,sqlConnection connection) in C:\ISSCode\branches\Samra2Freeze\Controls\ReportViewer\ReportViewer.cs:line 367
ClientConnectionId:fc8c8835-3d91-423e-b467-64c6adf6fecc
Error Number:8114,State:5,Class:16}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)