0% found this document useful (0 votes)
49 views4 pages

Cadena de Conexion

This document defines a RepositorioMaestro class that inherits from a Repositorio class. RepositorioMaestro contains methods for executing SQL statements and stored procedures against a database, including versions that allow for parameters. It can execute queries or non-queries, with or without parameters, and return data tables or perform actions without returning data. The methods abstract some of the ADO.NET connection and command handling for subclasses.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
49 views4 pages

Cadena de Conexion

This document defines a RepositorioMaestro class that inherits from a Repositorio class. RepositorioMaestro contains methods for executing SQL statements and stored procedures against a database, including versions that allow for parameters. It can execute queries or non-queries, with or without parameters, and return data tables or perform actions without returning data. The methods abstract some of the ADO.NET connection and command handling for subclasses.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 4

using System;

using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SoftwareDasnet.CapaDatos
{
public abstract class Repositorio
{
private readonly string CadenaConexion;
public Repositorio()
{
CadenaConexion = "server = TuServer; database=TuDataBase; integrated
security=true";
}
protected SqlConnection ObtenerConexion()
{
return new SqlConnection(CadenaConexion);
}
}
}

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SoftwareDasnet.CapaDatos
{
public abstract class RepositorioMaestro:Repositorio
{
protected List<SqlParameter> parametros;
protected void ExecuteNonQuery(string transactSql) //Ejecutar sentencias de
texto insert, update, delete con parametros
{
using (var conexion = ObtenerConexion())
{
conexion.Open();
using (var comando = new SqlCommand())
{
comando.Connection = conexion;
comando.CommandText = transactSql;
comando.CommandType = CommandType.Text;
foreach (SqlParameter item in parametros)
{
comando.Parameters.Add(item);
}
comando.ExecuteNonQuery();
parametros.Clear();
}
}
}

protected void ExecuteNonQuery(string transactSql) //Ejecutar sentencias de


texto insert, update, delete etc sin parametros
{
using (var conexion = ObtenerConexion())
{
conexion.Open();
using (var comando = new SqlCommand())
{
comando.Connection = conexion;
comando.CommandText = transactSql;
comando.CommandType = CommandType.Text;
comando.ExecuteNonQuery();
parametros.Clear();
}
}
}

protected void ExecuteNonQuery(string transactSql) //Ejecutar


procedimientos almacenados sin parametros
{
using (var conexion = ObtenerConexion())
{
conexion.Open();
using (var comando = new SqlCommand())
{
comando.Connection = conexion;
comando.CommandText = transactSql;
comando.CommandType = CommandType.StoredProcedure;
comando.ExecuteNonQuery();
parametros.Clear();
}
}
}

protected void ExecuteNonQuery(string transactSql) //Ejecutar


procedimientos almacenados con parametros
{
using (var conexion = ObtenerConexion())
{
conexion.Open();
using (var comando = new SqlCommand())
{
comando.Connection = conexion;
comando.CommandText = transactSql;
comando.CommandType = CommandType.StoredProcedure;
foreach (SqlParameter item in parametros)
{
comando.Parameters.Add(item);
}
comando.ExecuteNonQuery();
parametros.Clear();
}
}
}

protected DataTable ExecuteReader(string transactSql) //Devolver tablas


ejecutando consultas de texto con parametros
{
using (var conexion = ObtenerConexion())
{
conexion.Open();
using (var comando = new SqlCommand())
{
comando.Connection = conexion;
comando.CommandText = transactSql;
comando.CommandType = CommandType.Text;
foreach (SqlParameter item in parametros)
{
comando.Parameters.Add(item);
}
SqlDataReader lector = comando.ExecuteReader();
using (var tabla = new DataTable())
{
tabla.Load(lector);
lector.Dispose();
return tabla;
}
}
}
}

protected DataTable ExecuteReader(string transactSql) //Devolver tablas


ejecutando consultas de texto sin parametros
{
using (var conexion = ObtenerConexion())
{
conexion.Open();
using (var comando = new SqlCommand())
{
comando.Connection = conexion;
comando.CommandText = transactSql;
comando.CommandType = CommandType.Text;
SqlDataReader lector = comando.ExecuteReader();
using (var tabla = new DataTable())
{
tabla.Load(lector);
lector.Dispose();
return tabla;
}
}
}
}

protected DataTable ExecuteReader(string transactSql) //Devolver tablas


ejecutando consultas de procedimientos almacenados con parametros
{
using (var conexion = ObtenerConexion())
{
conexion.Open();
using (var comando = new SqlCommand())
{
comando.Connection = conexion;
comando.CommandText = transactSql;
comando.CommandType = CommandType.StoredProcedures;
foreach (SqlParameter item in parametros)
{
comando.Parameters.Add(item);
}
SqlDataReader lector = comando.ExecuteReader();
using (var tabla = new DataTable())
{
tabla.Load(lector);
lector.Dispose();
return tabla;
}
}
}
}

protected DataTable ExecuteReader(string transactSql) //Devolver tablas


ejecutando procedimientos almacenados sin parametros
{
using (var conexion = ObtenerConexion())
{
conexion.Open();
using (var comando = new SqlCommand())
{
comando.Connection = conexion;
comando.CommandText = transactSql;
comando.CommandType = CommandType.StoredProcedure;
SqlDataReader lector = comando.ExecuteReader();
using (var tabla = new DataTable())
{
tabla.Load(lector);
lector.Dispose();
return tabla;
}
}
}
}
}
}

You might also like