diff --git a/AmalgamationTool/DynamORM.Amalgamation.cs b/AmalgamationTool/DynamORM.Amalgamation.cs
index c7ff805..f7968c9 100644
--- a/AmalgamationTool/DynamORM.Amalgamation.cs
+++ b/AmalgamationTool/DynamORM.Amalgamation.cs
@@ -3698,9 +3698,7 @@ namespace DynamORM
/// Returns instance of builder on which action is set.
public static T CreateTemporaryParameterAction(this T b, Action a) where T : IDynamicQueryBuilder
{
- if (a == null)
- b.OnCreateTemporaryParameter = null;
- else
+ if (a != null)
{
if (b.OnCreateTemporaryParameter == null)
b.OnCreateTemporaryParameter = new List>();
@@ -3718,9 +3716,7 @@ namespace DynamORM
/// Returns instance of builder on which action is set.
public static T CreateParameterAction(this T b, Action a) where T : IDynamicQueryBuilder
{
- if (a == null)
- b.OnCreateParameter = null;
- else
+ if (a != null)
{
if (b.OnCreateParameter == null)
b.OnCreateParameter = new List>();
@@ -7090,6 +7086,8 @@ namespace DynamORM
VirtualMode = false;
Tables = new List();
Parameters = new Dictionary();
+ OnCreateTemporaryParameter = new List>();
+ OnCreateParameter = new List>();
WhereCondition = null;
OpenBracketsCount = 0;
@@ -11872,18 +11870,28 @@ namespace DynamORM
try
{
- if (Type.IsArray || _genericEnumerable)
+ if (!Type.IsAssignableFrom(val.GetType()))
{
- var lst = (val as IEnumerable