示例#1
0
 public static Alumno Insertar(string nombre, string apellido, int idTipoDocumento, decimal nroDocumento,
                               DateTime fechaNacimiento, string email, string dirección, Domicilio domicilio, byte estado, char sexo)
 {
     using (var db = new SMPorresEntities())
     {
         var trx = db.Database.BeginTransaction();
         try
         {
             var id = db.Alumnos.Any() ? db.Alumnos.Max(a1 => a1.Id) + 1 : 1;
             var a  = new Alumno
             {
                 Id              = id,
                 Nombre          = nombre,
                 Apellido        = apellido,
                 IdTipoDocumento = idTipoDocumento,
                 NroDocumento    = nroDocumento,
                 FechaNacimiento = fechaNacimiento,
                 EMail           = email,
                 Direccion       = dirección,
                 IdDomicilio     = DomiciliosRepository.ObtenerIdDomicilio(db, domicilio),
                 Estado          = estado,
                 Sexo            = sexo.ToString()
             };
             db.Alumnos.Add(a);
             db.SaveChanges();
             trx.Commit();
             return(a);
         }
         catch (Exception)
         {
             trx.Rollback();
             throw;
         }
     }
 }
示例#2
0
 public static void Actualizar(decimal id, string nombre, string apellido, int idTipoDocumento, decimal nroDocumento,
                               DateTime fechaNacimiento, string email, string dirección, Domicilio domicilio, byte estado, char sexo)
 {
     using (var db = new SMPorresEntities())
     {
         var trx = db.Database.BeginTransaction();
         try
         {
             if (!db.Alumnos.Any(t => t.Id == id))
             {
                 throw new Exception(String.Format("No existe el alumno {0} - {1}, {2}", id, apellido, nombre));
             }
             var a = db.Alumnos.Find(id);
             a.Nombre          = nombre;
             a.Apellido        = apellido;
             a.IdTipoDocumento = idTipoDocumento;
             a.NroDocumento    = nroDocumento;
             a.FechaNacimiento = fechaNacimiento;
             a.EMail           = email;
             a.Direccion       = dirección;
             a.IdDomicilio     = DomiciliosRepository.ObtenerIdDomicilio(db, domicilio);
             a.Estado          = estado;
             if (a.Estado != estado)
             {
                 a.Estado = estado;
             }
             a.Sexo = sexo.ToString();
             db.SaveChanges();
             trx.Commit();
         }
         catch (Exception)
         {
             trx.Rollback();
             throw;
         }
     }
 }