//Creacion de cuerpo DAL implementando metodos de entityframework public void CuerpoDALImplementado(StringBuilder Clase, string tablaBD) { Consultas aux = new Consultas(); Clase.AppendLine(" {"); Clase.AppendLine($" public static bool Agregar({tablaBD} ent)"); Clase.AppendLine(" {"); Clase.AppendLine(" var r = 0;"); Clase.AppendLine(" using (var cn = Conexion.ConexionDBSqlServer())"); Clase.AppendLine(" {"); Clase.AppendLine($" SqlCommand cmd = new SqlCommand({Comillas}SPU_INSERTAR_{tablaBD}{Comillas},cn);"); Clase.AppendLine(" cmd.CommandType = CommandType.StoredProcedure;"); var lista = Consultas.getParametros(tablaBD, "INSERTAR"); foreach (var item in lista) { Clase.AppendLine($" cmd.Parameters.AddWithValue({Comillas}{item.nombre}{Comillas},ent.{Regex.Replace(item.nombre, "@", "")});"); } Clase.AppendLine(" cn.Open();"); Clase.AppendLine(" r = cmd.ExecuteNonQuery();"); Clase.AppendLine(" cn.Close();"); Clase.AppendLine(" }"); Clase.AppendLine(" return r > 0;"); Clase.AppendLine(" }"); Clase.AppendLine(""); Clase.AppendLine($" public static bool Modificar({tablaBD} ent)"); Clase.AppendLine(" {"); Clase.AppendLine(" var r = 0;"); Clase.AppendLine(" using (var cn = Conexion.ConexionDBSqlServer())"); Clase.AppendLine(" {"); Clase.AppendLine($" SqlCommand cmd = new SqlCommand({Comillas}SPU_Modificar_{tablaBD}{Comillas},cn);"); Clase.AppendLine(" cmd.CommandType = CommandType.StoredProcedure;"); var listaUpdate = Consultas.getParametros(tablaBD, "MODIFICAR"); foreach (var item in listaUpdate) { Clase.AppendLine($" cmd.Parameters.AddWithValue({Comillas}{item.nombre}{Comillas},ent.{Regex.Replace(item.nombre, "@", "")});"); } Clase.AppendLine(" cn.Open();"); Clase.AppendLine(" r = cmd.ExecuteNonQuery();"); Clase.AppendLine(" cn.Close();"); Clase.AppendLine(" }"); Clase.AppendLine(" return r > 0;"); Clase.AppendLine(" }"); Clase.AppendLine(""); Clase.AppendLine($" public static bool Existe(string id)"); Clase.AppendLine(" {"); Clase.AppendLine(" var r = 0;"); Clase.AppendLine(" using (var cn = Conexion.ConexionDBSqlServer())"); Clase.AppendLine(" {"); Clase.AppendLine($" var sql = {Comillas}select count(Id) from {tablaBD} where Id = @Id{Comillas}; "); Clase.AppendLine(" var cmd = new SqlCommand(sql, cn);"); Clase.AppendLine($" cmd.Parameters.AddWithValue({Comillas}@Id{Comillas}, id);"); Clase.AppendLine(" cn.Open();"); Clase.AppendLine(" r = (int)cmd.ExecuteScalar();"); Clase.AppendLine(" cn.Close();"); Clase.AppendLine(" }"); Clase.AppendLine(" return r > 0;"); Clase.AppendLine(" }"); Clase.AppendLine(""); Clase.AppendLine($" public static bool Eliminar(string id)"); Clase.AppendLine(" {"); Clase.AppendLine(" var r = 0;"); Clase.AppendLine(" using (var cn = Conexion.ConexionDBSqlServer()){"); Clase.AppendLine($" var sql = {Comillas}UPDATE {tablaBD} SET Estado='0' WHERE Id =@Id{Comillas};"); Clase.AppendLine(" var cmd = new SqlCommand(sql, cn);"); Clase.AppendLine($" cmd.Parameters.AddWithValue({Comillas}@Id{Comillas}, id);"); Clase.AppendLine(" cn.Open();"); Clase.AppendLine(" r = cmd.ExecuteNonQuery();"); Clase.AppendLine(" cn.Close();"); Clase.AppendLine(" }"); Clase.AppendLine(" return r > 0;"); Clase.AppendLine(" }"); Clase.AppendLine(""); Clase.AppendLine(""); Clase.AppendLine($" public static {tablaBD} CrearEntidad(IDataReader lector)"); Clase.AppendLine(" {"); Clase.AppendLine($" var aux = new {tablaBD}();"); var Campos = aux.ObtenerCampos(tablaBD); for (int i = 0; i < Campos.Count; i++) { if (Campos[i].tipoDato.Contains("char") || Campos[i].tipoDato.Contains("nvarchar") || Campos[i].tipoDato.Contains("varchar")) { Clase.AppendLine($" aux.{Campos[i].Nombre} = lector.GetString({i});"); } //Agregar Mas tipos de datos } Clase.AppendLine($" return aux;"); Clase.AppendLine(" }"); Clase.AppendLine(""); Clase.AppendLine($" public static List<{tablaBD}> Buscar({tablaBD} ent)"); Clase.AppendLine(" {"); Clase.AppendLine($" var lista = new List<{tablaBD}>();"); Clase.AppendLine($" using (var cn = Conexion.ConexionDBSqlServer())"); Clase.AppendLine(" {"); Clase.AppendLine($" SqlCommand cmd = new SqlCommand({Comillas}SPU_BUSCAR_{tablaBD}{Comillas}, cn); "); Clase.AppendLine(" cmd.CommandType = CommandType.StoredProcedure;"); Clase.AppendLine(" cn.Open();"); var listaSelect = Consultas.getParametros(tablaBD, "BUSCAR"); foreach (var item in listaSelect) { Clase.AppendLine($" cmd.Parameters.AddWithValue({Comillas}{item.nombre}{Comillas},ent.{Regex.Replace(Regex.Replace(item.nombre, $"@{tablaBD}", ""), "@", "")});"); } Clase.AppendLine(" var r = cmd.ExecuteReader();"); Clase.AppendLine(" while (r.Read())"); Clase.AppendLine(" {"); Clase.AppendLine(" lista.Add(CrearEntidad(r));"); Clase.AppendLine(" }"); Clase.AppendLine(" cn.Close();"); Clase.AppendLine(" }"); Clase.AppendLine(" return lista;"); Clase.AppendLine(" }"); Clase.AppendLine(""); Clase.AppendLine($" public static List<{tablaBD}> ObtenerUltimos()"); Clase.AppendLine(" {"); Clase.AppendLine($" var lista = new List<{tablaBD}>();"); Clase.AppendLine($" using (var cn = Conexion.ConexionDBSqlServer())"); Clase.AppendLine(" {"); Clase.AppendLine($" SqlCommand cmd = new SqlCommand({Comillas}SPU_TOP10_{tablaBD}{Comillas}, cn); "); Clase.AppendLine(" cn.Open();"); Clase.AppendLine(" var r = cmd.ExecuteReader();"); Clase.AppendLine(" while (r.Read())"); Clase.AppendLine(" {"); Clase.AppendLine(" lista.Add(CrearEntidad(r));"); Clase.AppendLine(" }"); Clase.AppendLine(" cn.Close();"); Clase.AppendLine(" }"); Clase.AppendLine(" return lista;"); Clase.AppendLine(" }"); Clase.AppendLine(" }"); Clase.AppendLine("}"); }