public ActionResult InformarPagoImpuesto() { if (!User.Identity.IsAuthenticated) { ViewBag.ErrorInfo = new ErrorInfo() { error = true, message = "Error: por favor haga un login a esta aplicación, y luego regrese a ejecutar esta función." }; return(View()); } var context = new dbContab_Contab_Entities(); int ciaContabSeleccionada; string nombreCiaContabSeleccionada; try { var cia = context.tCiaSeleccionadas.Where(s => s.UsuarioLS == User.Identity.Name). Select(c => new { ciaContabSeleccionada = c.Compania.Numero, ciaContabSeleccionadaNombre = c.Compania.Nombre }). FirstOrDefault(); if (cia == null) { ViewBag.ErrorInfo = new ErrorInfo() { error = true, message = "Error: aparentemente, no se ha seleccionado una <em>Cia Contab</em>.<br />" + "Por favor seleccione una <em>Cia Contab</em> y luego regrese y continúe con la ejecución de esta función.<br />" + "Para seleccionar una <em>compañía Contab</em>, desde la página principal abra el menú <em>Generales</em> y " + "luego la opción <em>Seleccionar compañía</em>." }; return(View()); } nombreCiaContabSeleccionada = cia.ciaContabSeleccionadaNombre; ciaContabSeleccionada = cia.ciaContabSeleccionada; } catch (Exception ex) { string message = ex.Message; if (ex.InnerException != null) { message += "<br />" + ex.InnerException.Message; } ViewBag.ErrorInfo = new ErrorInfo() { error = true, message = "Error: se ha producido un error al intentar efectuar una operación en la base de datos.<br />" + "El mensaje específico de error es: <br />" + message }; return(View()); } ViewBag.ErrorInfo = null; // ahora leemos el rif desde la tabla de compañías var compania = context.Companias.Where(c => c.Numero == ciaContabSeleccionada).FirstOrDefault(); var pagoAnticipado = new EventoPagoAnticipado() { _id = ObjectId.GenerateNewId().ToString(), Fecha = DateTime.Today, FechaRegistro = DateTime.Now, Rif = compania.Rif, Monto = 0, Usuario = User.Identity.Name, Cia = compania.Numero }; ViewBag.PageInfo = null; return(View(pagoAnticipado)); }