public async Task <CrearResponse <Soporte> > CrearAsync(SoporteCrear modelo) { var evento = await repositorio.ConsultarElPrimeroAsync <EventoCalendario>(q => q.Id == modelo.EventoId); var autoinfoAlCrear = new EntidadAutoinfo <Soporte>(); autoinfoAlCrear.SetValue(v => v.RegionalId, evento.RegionalId); autoinfoAlCrear.SetValue(v => v.ProyectoId, evento.ProyectoId); autoinfoAlCrear.SetValue(v => v.Nombre, modelo.Nombre); autoinfoAlCrear.SetValue(v => v.Tamanio, 0); autoinfoAlCrear.SetValue(v => v.Ruta, ""); autoinfoAlCrear.SetValue(v => v.Extension, ""); repositorio.IniciarTransaccion(); var soporte = await base.CrearAsync(modelo, autoinfoAlCrear); var tamanio = await archivoSoporteAlmacen.CrearAsync(soporte.Data, modelo.RequestStream); soporte.Data.Nombre = archivoSoporteAlmacen.NombreSoporte(soporte.Data); soporte.Data.Ruta = archivoSoporteAlmacen.RutaSoporte(soporte.Data); soporte.Data.Extension = MimeTypes.GetMimeType(modelo.Nombre); soporte.Data.Tamanio = tamanio; await repositorio.ActualizarAsync(soporte.Data); repositorio.FinalizarTransaccion(); return(soporte); }
public async Task <T> ConsultarElPrimeroAsync <T>(Expression <Func <T, bool> > predicado) { return(await repositorio.ConsultarElPrimeroAsync(predicado)); }