Ver Mensaje Individual
  #9 (permalink)  
Antiguo 24/11/2012, 04:09
thanos
 
Fecha de Ingreso: octubre-2012
Ubicación: España
Mensajes: 30
Antigüedad: 12 años
Puntos: 2
Respuesta: Uso de clases en asp.net

Puedes crear procedimientos almacenados en la bd que vayan en función de parámetros que le pasarás desde la aplicación. Algo así:

CREATEPROCEDURE insertarUsuario
@Nombre varchar(25),
@Apellidos varchar(50)
AS
insert into Usuarios (Nombre,Apellidos) values(@Nombre,@Apellidos)

en la capa de Acceso a Datos te creas una clase para los usuarios que se llame por ejemplo AccUsuarios y creas un método que abra la conexión, defina los parámetros y ejecute el procedimiento almacenado:

public string insertarUsuario(AccUsuarios user)
{
string rpta = "";
SqlConnection cn = new SqlConnection();

try
{
///Se abre la conexión con bd y se dice que proc. almacenado usar
cn.ConnectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ToString();
cn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = cn;
cmd.CommandText = "insertarUsuario";
cmd.CommandType = CommandType.StoredProcedure;

///Se definen los parámetros y tipos de datos del proc.
SqlParameter pmNombre = new SqlParameter();
pmNombre.ParameterName = "@Nombre";
pmNombre.SqlDbType = SqlDbType.VarChar;
pmNombre.Size = 25;
pmNombre.Value = user.Nombre;
cmd.Parameters.Add(pmNombre);

SqlParameter pmApellidos = new SqlParameter();
pmApellidos.ParameterName = "@Apellidos";
pmApellidos.SqlDbType = SqlDbType.VarChar;
pmApellidos.Size = 50;
pmApellidos.Value = user.Apellidos;
cmd.Parameters.Add(pmApellidos);

//Se ejecuta el proc.
rpta = cmd.ExecuteNonQuery() == 1 ? "OK" : "No se insertó el usuario correctamente";
}

catch (Exception ex)
{
rpta = ex.Message;
}

finally
{
//Se cierra la conexión
if (cn.State == ConnectionState.Open)
cn.Close();
}

return rpta;
}

La parte donde abres la conexión y pone ["ConnectionString"], ese es el nombre de tu cadena de conexión definida en el webconfig. En la capa de Negocio te creas una clase para los usuarios que se llame NegUsuarios y te creas el método que has hecho antes:

public static string insertarUsuario(string Nombre, string Apellidos)
{
AccUsuarios user = new AccUsuarios();
user.Nombre = Nombre;
user.Apellidos = Apellidos;

return user.insertarUsuario(user);
}

Luego en la capa de interfaz imagina que tienes un formulario con 2 textbox y un botón que cuando lo pulsas guarda los datos en la bd. Pues al código del botón le pones esto:

NegUsuarios.insertarUsuario(textbox1.Text, textbox2.Text);

Los textbox.Text serán los @Nombre Y @Apellidos que has definido antes. La forma de ir usando la bd de datos es más o menos esa, pero no es lo único, debes crearte bien tus clases, agregar las referencias entre capas, definir tu cadena de conexión para que sólo aparezca en el webconfig...