Sie sind auf Seite 1von 5

UPAO – Ing.

Carlos Jara García

ADO.NET 4.0

1.- Crear Conexión a base de datos SQL Server

1.1- Agregar en el archivo Web.Config la entrada ConnectionString

1.2- Importar namespace System.Data.SqlClient

1.3- Después de importar el namespace, crear el objeto conexión:

1.4- Obtener la cadena de conexión declarada en el archivo de configuración y asignar al

objeto conexión:

1.5- Después que el objeto conexión es inicializado e instanciado se deberá abrir la

conexión antes de usar los objetos DataAdapter y/o DataReader:

Nota: Debido a que el objeto conexión utiliza recursos que no son administrados, por lo
tanto el garbage collection no se ejecuta automáticamente debiendo cerrar o destruir el objeto
después de usarlo, de lo contrario la conexión permanecerá activa en el servidor degradando su
rendimiento , incluso negando el acceso a otros usuarios.

1.6- Se cerrará la conexión y eliminará el objeto


UPAO – Ing. Carlos Jara García

También se puede usar la cláusula Using para encapsular la conexión, y con esto no hay necesidad
de cerrar y destruir el objeto conexión ya que implícitamente se da su destrucción de memoria.

using (SqlConnection orderConnection = new SqlConnection())

orderConnection.ConnectionString = "Data Source=DatabaseServer;Initial Catalog=OrderDatabase;Integrated Security=True";

orderConnection.Open();

...

orderConnection.Close();

2.- Devolviendo datos de una consulta.

2.1- Declarar objeto command para especificar los parámetros de consulta, asignar el

resultado de la consulta a un objeto DataTable que posteriormente se asignará al control

GridView de la interfaz de usuario. El método a implementar será llamado desde el evento

Load de la página.

2.2- Ejecutar la aplicación para ver los resultados.


UPAO – Ing. Carlos Jara García

3.- Actualizando Datos

3.1- Registrar

private bool RegistrarCreditCard()


{
var resp = 0;

try
{
var cadena = System.Configuration.ConfigurationManager.ConnectionStrings["oCnBase"].ConnectionString;
var sql = "insert into sales.CreditCard (CardType,CardNumber,ExpMonth,ExpYear,ModifiedDate)
values(@CardType,@CardNumber,@ExpMonth,@ExpYear,@ModifiedDate)";

using (var oCon = new SqlConnection())


{
oCon.ConnectionString = cadena;

oCon.Open();

var oCm = new SqlCommand();


oCm.Connection = oCon;
oCm.CommandType = System.Data.CommandType.Text;
oCm.CommandText = sql;

//Definición de Parámetros
var oPar1 = new SqlParameter();
oPar1.ParameterName = "@CardType";
oPar1.SqlDbType = System.Data.SqlDbType.NVarChar;
oPar1.Value = txtTipo.Text;

var oPar2 = new SqlParameter();


oPar2.ParameterName = "@CardNumber";
oPar2.SqlDbType = System.Data.SqlDbType.NVarChar;
oPar2.Value = txtNumero.Text;

var oPar3 = new SqlParameter();


oPar3.ParameterName = "@ExpMonth";
oPar3.SqlDbType = System.Data.SqlDbType.TinyInt;
oPar3.Value = Int16.Parse(txtMes.Text);

var oPar4 = new SqlParameter();


oPar4.ParameterName = "@ExpYear";
oPar4.SqlDbType = System.Data.SqlDbType.SmallInt;
oPar4.Value = Int16.Parse(txtAnio.Text);

var oPar5 = new SqlParameter();


oPar5.ParameterName = "@ModifiedDate";
oPar5.SqlDbType = System.Data.SqlDbType.DateTime;
oPar5.Value = DateTime.Now;

//Agregar Parámetros al objeto Command


oCm.Parameters.Add(oPar1);
oCm.Parameters.Add(oPar2);
oCm.Parameters.Add(oPar3);
oCm.Parameters.Add(oPar4);
oCm.Parameters.Add(oPar5);

resp = oCm.ExecuteNonQuery();

}
catch (SqlException ex)
{
lblMensaje.Text = ex.Message;
}
catch (Exception ex)
{
lblMensaje.Text = ex.Message;
}

return resp > 0;


}
UPAO – Ing. Carlos Jara García

3.2- Vista de Registro

System.Data.DataTable oDt = null;

protected void Page_Load(object sender, EventArgs e)


{
FillGrid();
}
private void FillGrid()
{
try
{

var cadena = System.Configuration.ConfigurationManager.ConnectionStrings["oCnBase"].ConnectionString;


var sql = "select CreditCardID,CardType,CardNumber,ExpMonth,ExpYear,ModifiedDate from sales.CreditCard";

using (var oCon = new SqlConnection())


{
oCon.ConnectionString = cadena;

oCon.Open();

var oCm = new SqlCommand();


oCm.Connection = oCon;
oCm.CommandType = System.Data.CommandType.Text;
oCm.CommandText = sql;

SqlDataReader oDr = oCm.ExecuteReader();

oDt = new System.Data.DataTable();


oDt.Load(oDr);

gvwCreditCard.DataSource = oDt;
gvwCreditCard.DataBind();

}
}
catch (SqlException ex)
{
lblMensaje.Text = ex.Message;
}
catch (Exception ex)
{
lblMensaje.Text = ex.Message;
}

protected void gvwCreditCard_PageIndexChanging(object sender, GridViewPageEventArgs e)


{
gvwCreditCard.PageIndex = e.NewPageIndex;
gvwCreditCard.DataSource = oDt;
gvwCreditCard.DataBind();
}

3.3- Edición
UPAO – Ing. Carlos Jara García

protected void Page_Load(object sender, EventArgs e)


{
var id = Request.Params["id"];
if (string.IsNullOrEmpty(id))
Response.Redirect("ViewCreditCard.aspx");
else
ProcesarInfo(Int32.Parse(id));
}

private void ProcesarInfo(int id)


{
try
{
var cadena = System.Configuration.ConfigurationManager.ConnectionStrings["oCnBase"].ConnectionString;
var sql = "select CreditCardID,CardType,CardNumber,ExpMonth,ExpYear,ModifiedDate from sales.CreditCard where CreditCardID=@CreditCardID";

using (var oCon = new SqlConnection())


{
oCon.ConnectionString = cadena;

oCon.Open();

var oCm = new SqlCommand();


oCm.Connection = oCon;
oCm.CommandType = System.Data.CommandType.Text;
oCm.CommandText = sql;

oCm.Parameters.Add(new SqlParameter("@CreditCardID",id));

SqlDataReader oDr = oCm.ExecuteReader();

var oDt = new System.Data.DataTable();


oDt.Load(oDr);

if(oDt.Rows.Count>0){

txtId.Text=oDt.Rows[0]["CreditCardID"].ToString();
txtTipo.Text=oDt.Rows[0]["CardType"].ToString();
txtNumero.Text=oDt.Rows[0]["CardNumber"].ToString();
txtMes.Text=oDt.Rows[0]["ExpMonth"].ToString();
txtAnio.Text=oDt.Rows[0]["ExpYear"].ToString();

}
}
catch (SqlException ex)
{
lblMensaje.Text = ex.Message;
}
catch (Exception ex)
{
lblMensaje.Text = ex.Message;
}
}

Das könnte Ihnen auch gefallen