mayswind / DotMaysWind.Data

非常轻量级的数据库访问工具库,链式代码编写,封装了SQL语句以及各个数据库中常用的函数,支持Access、SQLite、SQL Server CE、SQL Server、MySQL以及Oracle数据库。
MIT License
15 stars 9 forks source link

BUG : "SqlConditionBuilder.In()" #1

Closed Gscienty closed 9 years ago

Gscienty commented 9 years ago

System.InvalidCastException: 对象必须实现 IConvertible。

在 System.Convert.ChangeType(Object value, Type conversionType, IFormatProvider provider)

在 System.Data.SqlClient.SqlParameter.CoerceValue(Object value, MetaType destinationType);将参数值从 List`1 转换到 String 失败。;System.Object CoerceValue(System.Object, System.Data.SqlClient.MetaType); 在 System.Data.SqlClient.SqlParameter.CoerceValue(Object value, MetaType destinationType)

在 System.Data.SqlClient.SqlParameter.GetCoercedValue()

在 System.Data.SqlClient.SqlParameter.Validate(Int32 index, Boolean isCommandProc)

在 System.Data.SqlClient.SqlCommand.BuildParamList(TdsParser parser, SqlParameterCollection parameters)

在 System.Data.SqlClient.SqlCommand.BuildExecuteSql(CommandBehavior behavior, String commandText, SqlParameterCollection parameters, _SqlRPC& rpc)

在 System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)

在 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)

在 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)

在 System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)

在 System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)

在 System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)

在 System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)

在 System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)

在 System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)

在 DotMaysWind.Data.Helper.DataSetHelper.InternalCreateDataSet(DbProviderFactory dbProvider, DbCommand dbCommand, String[] tableNames)

在 DotMaysWind.Data.Helper.DataSetHelper.InternalCreateDataSet(DbProviderFactory dbProvider, DbCommand dbCommand)

在 DotMaysWind.Data.AbstractDatabase.ExecuteDataSet(DbCommand dbCommand, DbConnection connection, DbTransaction transaction)

在 DotMaysWind.Data.AbstractDatabase.ExecuteDataTable(DbCommand dbCommand, DbConnection connection, DbTransaction transaction)

在 DotMaysWind.Data.AbstractDatabase.ExecuteDataTable(ISqlCommand command)

在 DotMaysWind.Data.Orm.SelectCommandExtension.ToEntityList[T](SelectCommand cmd, AbstractDatabaseTable`1 table)

mayswind commented 9 years ago

你应该用.In(String columnName, String values, Char separator)这个重载。。。