Exemple #1
0
 /// <summary>
 /// Convert an object into an IEnumerable&lt;DbParameter&gt;
 /// </summary>
 /// <param name="parameters"></param>
 /// <param name="cmd"></param>
 /// <returns></returns>
 public static IEnumerable<DbParameter> ToSqlParameters(this object parameters, DbCommand cmd)
 {
     if (parameters is ExpandoObject)
     {
         var dict = parameters as IDictionary<string, object>;
         foreach (var key in dict.Keys)
             yield return cmd.GetParameter(key, dict[key], dict[key].GetType());
     }
     else
     {
         foreach (var propInfo in parameters.GetType().GetProperties().Where(x => x.CanRead))
             yield return cmd.GetParameter(parameters, propInfo);
     }
 }