conductor cond = new conductor(); // el conductor al cual se le modificara un material o añadira uno public FormMateriales(conductor condu) //ALTA { InitializeComponent(); labelDevolucion.Visible = false; // No es visible cuando es una alta ya que el aviso la primera vez no tiene porque aparecer alta = true; // es una alta por tanto true cond = condu; // copiamos el conductor pasado por parámetro en nuestra variable }
static public string InsertConductor(conductor conduc) { string mensaje = ""; contexto.conductor.Add(conduc); // añadimos un conductor mensaje = AcceptChanges(); // acceptChanges para guardar y reflejar los cambios en la BD return(mensaje); // retornamos mensaje para saber como ha ido la operación }
public FormMateriales(Material material, conductor condu) //MODIFICACIÓN { InitializeComponent(); aux_material = material; //copiamos el material a nuestra variable cond = condu; // copiamos el conductor a nuestra variable if (!material.fecha_devolucion.HasValue) // Si la fecha de devolución no tiene un value , pues sale el aviso de que se puede añadir una fecha. { labelDevolucion.Visible = true; } }
private void buttonGrabar_Click(object sender, EventArgs e) { if (Alta) // Si es alta { conductor c = new conductor(); c.dni = textBoxDNI.Text; //copiamos todos los datos c.nombre = textBoxNombre.Text; c.apellido = textBoxApellido.Text; c.tipo_carnet = textBoxTipoCarnet.Text; string f = dateTimePickerFechaN.Value.ToString("yyyy-MM-dd"); // en el caso de la fecha tenemos que volver a pasar de DateTime a string DateTime fecha = new DateTime(); if (!DateTime.TryParse(f, out fecha)) //Aqui parseamos el string a DateTime (se hace dos conversiones porque el formato que -> // lee la base de datos es yyyy-MM-dd aunque nosotros veamos dd-MM-yyyy. { fecha = Convert.ToDateTime(f, System.Globalization.CultureInfo.GetCultureInfo("en-Us").DateTimeFormat); } c.fecha_nac = fecha; //igualamos la fecha string mensaje = BD.InsertConductor(c); // insertamos en la base de datos mostrarMensaje(mensaje); //mostramos mensaje recibido de la consulta LINQ Alta = false; // ponemos false para que si volvemos a entrar se reinicie this.Close(); // cerramos el form de la alta } else if (!Alta) // si es modificacion { aux.dni = textBoxDNI.Text; // copiamos los datos aux.nombre = textBoxNombre.Text; aux.apellido = textBoxApellido.Text; aux.tipo_carnet = textBoxTipoCarnet.Text; string f = dateTimePickerFechaN.Value.ToString("yyyy-MM-dd"); //pasamos a string DateTime fecha = new DateTime(); if (!DateTime.TryParse(f, out fecha)) // lo mismo de antes primero pasamos al formato de la BD y ahora lo ponemos en una variable dateTime { fecha = Convert.ToDateTime(f, System.Globalization.CultureInfo.GetCultureInfo("en-Us").DateTimeFormat); } aux.fecha_nac = fecha; string msg = BD.AcceptChanges(); // Al ser Linq al modificar unicamente le damos a acceptChanges sin tener que hacer una query update mostrarMensaje(msg); //mostrar mensaje this.Close(); // cerrar form } }
public FormDatosConductores(conductor c) //modificacion { InitializeComponent(); aux = c; // copiamos el conductor seleccionado en nuestra variable textBoxDNI.ReadOnly = true; // readOnly para no poder modificar el DNI porque es Primary Key }