public static DbDataAdapter DataAdapter(DACommand command) { command.cmd.Parameters.Cast <System.Data.Common.DbParameter>().ToList().ForEach(p => { if (command.DbParamToColumnNameMap.TryGetValue(p.ParameterName, out Option <string> maybeColumnName)) { maybeColumnName.MatchSome(cn => p.SourceColumn = cn); } else { p.SourceColumn = p.ParameterName.Replace("@", ""); } }); return(DbProviderFactories.GetFactory(command.cmd.Connection).CreateDataAdapter() .AddCommand(command)); }
public static DbDataAdapter AddCommand(this DbDataAdapter da, DACommand command) { if (command is DACommand.Select) { da.SelectCommand = command.cmd; } if (command is DACommand.Update) { da.UpdateCommand = command.cmd; } if (command is DACommand.Insert) { da.InsertCommand = command.cmd; } if (command is DACommand.Delete) { da.DeleteCommand = command.cmd; } return(da); }