Commit adf39686 authored by Joseph Daigle's avatar Joseph Daigle

fix for https://github.com/StackExchange/dapper-dot-net/issues/203

check to see if enumerable is null before access
parent c840cc2e
......@@ -2705,28 +2705,31 @@ public static void PackListParameters(IDbCommand command, string namePrefix, obj
var count = 0;
bool isString = value is IEnumerable<string>;
bool isDbString = value is IEnumerable<DbString>;
foreach (var item in list)
if (list != null)
{
count++;
var listParam = command.CreateParameter();
listParam.ParameterName = namePrefix + count;
if (isString)
foreach (var item in list)
{
listParam.Size = DbString.DefaultLength;
if (item != null && ((string)item).Length > DbString.DefaultLength)
count++;
var listParam = command.CreateParameter();
listParam.ParameterName = namePrefix + count;
if (isString)
{
listParam.Size = -1;
listParam.Size = DbString.DefaultLength;
if (item != null && ((string)item).Length > DbString.DefaultLength)
{
listParam.Size = -1;
}
}
if (isDbString && item as DbString != null)
{
var str = item as DbString;
str.AddParameter(command, listParam.ParameterName);
}
else
{
listParam.Value = item ?? DBNull.Value;
command.Parameters.Add(listParam);
}
}
if (isDbString && item as DbString != null)
{
var str = item as DbString;
str.AddParameter(command, listParam.ParameterName);
}
else
{
listParam.Value = item ?? DBNull.Value;
command.Parameters.Add(listParam);
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment