Commit 5223d9b0 authored by kmontrose's avatar kmontrose

Adding join and fixing a bug with chaining dynamic parameters.

parent 20f682cd
......@@ -563,10 +563,15 @@ public SqlBuilder Select(string sql, dynamic parameters = null)
return this;
}
string parameterClause = Guid.NewGuid().ToString();
public SqlBuilder AddParameters(dynamic parameters)
{
AddClause(parameterClause, "", parameters, "");
AddClause("--parameters", "", parameters, "");
return this;
}
public SqlBuilder Join(string sql, dynamic parameters = null)
{
AddClause("join", sql, parameters, joiner: "\nJOIN ", prefix: "\nJOIN", postfix: "\n");
return this;
}
}
......
......@@ -1698,14 +1698,37 @@ object param
#else
dynamic param
#endif
)
)
{
object obj = param as object;
if (obj != null)
{
templates = templates ?? new List<object>();
templates.Add(obj);
{
var subDynamic = obj as DynamicParameters;
if (subDynamic == null)
{
templates = templates ?? new List<object>();
templates.Add(obj);
}
else
{
if (subDynamic.parameters != null)
{
foreach (var kvp in subDynamic.parameters)
{
parameters.Add(kvp.Key, kvp.Value);
}
}
if (subDynamic.templates != null)
{
foreach (var t in subDynamic.templates)
{
templates.Add(t);
}
}
}
}
}
......
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