sql >> Base de Datos >  >> RDS >> Sqlserver

Usando SqlCommand, cómo agregar múltiples parámetros a su objeto, inserción a través de winform en la tabla sql

Puede usar un método de extensión, como este:

public static class DbCommandExtensions
{
    public static void AddInputParameters<T>(this IDbCommand cmd,
        T parameters) where T : class
    {
        foreach (var prop in parameters.GetType().GetProperties())
        {
            object val = prop.GetValue(parameters, null);
            var p = cmd.CreateParameter();
            p.ParameterName = prop.Name;
            p.Value = val ?? DBNull.Value;
            cmd.Parameters.Add(p);
        }
    }
}

Entonces llámalo así:

cmd.AddInputParameters(new { a = textBox1.Text, b = TextBox2.Text, /* etc */ });

Lo he usado en algunos proyectos sin problemas.