public static MakeWhereClause ( object>.IDictionary |
||
whereCols | object>.IDictionary | Dictionary of object column values keyed by string column names. |
sqlParams | IList | List to insert sql param values (in order) into. |
return | string |
public static string MakeWhereClause(IDictionary<string, object> whereCols, IList<object> sqlParams)
{
StringBuilder whereClause = DbCaches.StringBuilders.Get();
if ((whereCols != null) && (whereCols.Count > 0))
{
whereClause.Append(" WHERE ");
bool first = true;
foreach (string key in whereCols.Keys)
{
if (!first)
{
whereClause.Append(" AND ");
}
else
{
first = false;
}
object val = whereCols[key];
whereClause.Append(key);
if (val != null)
{
whereClause.Append(" = ?");
sqlParams.Add(val);
}
else
{
whereClause.Append(" IS NULL");
}
}
}
string retVal = whereClause.ToString();
DbCaches.StringBuilders.Return(whereClause);
return retVal;
}