Clean Code. Formato vertical y horizontal.
Se describen una serie de prácticas que debes seguir para que tu código sea más fácil leer y mantener. FORMATO VERTICAL El tamaño del documento no debería superar las 200… Lee más »
Se describen una serie de prácticas que debes seguir para que tu código sea más fácil leer y mantener. FORMATO VERTICAL El tamaño del documento no debería superar las 200… Lee más »
Código usando SmtpClient en C#
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
try { string servidor = ConfigurationManager.AppSettings["Servidor"]; string usuario = ConfigurationManager.AppSettings["Usuario"]; string clave = ConfigurationManager.AppSettings["Clave"]; // Los usuarios van separados por coma string destinatarios = ConfigurationManager.AppSettings["Destinatarios"]; var smtp = new SmtpClient(servidor); smtp.Port = 587; smtp.Credentials = new System.Net.NetworkCredential(usuario, clave); var mensaje = new MailMessage(); mensaje.From = new MailAddress(usuario); mensaje.Subject = "Hola buenos días, ayer fue:"+ DateTime.Now.AddDays(-1).ToShortDateString(); mensaje.Body = cuerpo; foreach (var destinatario in destinatarios.Split(',')) { mensaje.To.Add(destinatario); } smtp.Send(mensaje); smtp.Dispose(); return true; } catch { return false; } } |
Para un momento dado si necesitamos lanzar una consulta por código podrías hacerlo mediante un Sql DataReader.
1 2 3 4 5 6 7 8 9 10 11 12 |
private static SqlDataReader ObtenerDatos(SqlConnection cnx) { string sql = "SELECT FechaHora,Nombre "+ "FROM TablaMia " "WHERE(condiciones..) "; var miComando = new SqlCommand(sql, cnx); if (cnx.State != ConnectionState.Open) cnx.Open(); return miComando.ExecuteReader(); } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
static void Main(string[] args) { var miConexion = new SqlConnection(); miConexion.ConnectionString = ConfigurationManager.ConnectionStrings["connexionSqlServer"].ConnectionString; try { var lector=ObtenerDatos(miConexion); if (lector.HasRows) { while (lector.Read()) { var fecha= lector["FechaHora"]; var nombre=lector["Nombre"]; } } } if (miConexion.State != ConnectionState.Closed) miConexion.Close(); } catch (Exception ex) { } } |
Aquí pongo otro ejemplo de como ejecutarla de forma Asíncrona…. Lee más »
Quiero cargar un ListBox con un List. En mi caso tengo una clase llamada DocumentoPdf
1 2 3 4 5 6 7 8 9 10 11 |
public class DocumentoPdf { public string Path { get; set; } public long Peso { get; set; } //Hace que en el ListBox, aparezca este texto en vez del nombre del objeto. public override string ToString() { return string.Format("{0} Peso: {1}KB", Path, Peso); } } |
Quiero cargar el ListBox con un List<DocumentoPdf>
1 2 3 |
var resultadoDocumentos = new List<DocumentoPdf>(); //relleno o obtengo el listado de documentos. lbListadoResultado.Items.AddRange(resultadoDocumentos.ToArray()); |
Ahora tengo una… Lee más »