ASP.NET - Como llamar a vista desde metodo de controlador en MVC Api C#

 
Vista:
Imágen de perfil de Marco
Val: 3
Ha disminuido su posición en 2 puestos en ASP.NET (en relación al último mes)
Gráfica de ASP.NET

Como llamar a vista desde metodo de controlador en MVC Api C#

Publicado por Marco (3 intervenciones) el 05/01/2020 11:41:15
Saludos

Amigos, una consulta, les comento nuevamente soy novato en MVC, estoy trabajando en un desarrollo de Login en MVC Api Web para desde otras aplicaciones web que tenemos llamar a login, enviándole el Id de la aplicación que lo llama...

Lo lleve a cabo utilizando ET, y escribí el siguiente método que es funcional dentro del controlador Acceso el cual recibe ID a través de un modelo AccesoVieModel, y utilizando Tiddler es como verifico la recepción del id por Post observo el correcto resultado.

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
33
34
35
36
37
38
39
40
41
42
43
44
45
[HttpPost]
public AccesoViewModel VerificaAplicacion([FromBody] AplicacionViewModel model)
{
    AccesoViewModel oR = new AccesoViewModel();
    oR.resultado = 1;
    try
    {
        using (AccesoEntities db = new AccesoEntities())
        {
            var lst = (from ca in db.catalogo_aplicacion
                       join ce in db.catalogo_estatus on ca.id_estatus equals ce.id
                       where ca.id == model.id_aplicacion
                       select new { ca.id, ca.cnombre_aplicacion, ca.curl, ca.id_estatus }).FirstOrDefault();
            if (lst == null)
            {
                oR.resultado = 5;
                oR.mensaje = ":-/ Caramba !, No encontre relación del ID que enviastes con ninguna aplicación registrada. Por favor verifica ID enviado."; // Si se recibe un ID que no exista de la aplicación
            }
            else
            {
                switch (lst.id_estatus)
                {
                    case 2:
                        oR.resultado = 2;
                        oR.mensaje = "Lamentamos los inconvenientes causados, esta aplicación esta INACTIVA TEMPORALMENTE, para mayores informes consulte con el COORDINADOR y/o RESPONSABLE de este PORTAL.";
                        break;
                    case 3:
                        oR.resultado = 3;
                        oR.mensaje = "Lamentamos los inconvenientes causados, la Aplicación se ENCUENTRA en proceso de ACTUALIZACIÓN y/o MANTENIMIENTO, consulte más tarde...";
                        break;
                    case 4:
                        oR.resultado = 4;
                        oR.mensaje = "Le informamos que la Aplicación se encuentra DADA DE BAJA, para mayores informes consulte con el COORDINADOR y/o RESPONSABLE de este PORTAL .";
                        break;
                }
            }
        }
    }
    catch (Exception ex)
    {
        oR.resultado = 0;
        oR.mensaje = ":-/ Caray esto no debio pasar!, ha ocurrido un error : " + ex.ToString();
    }
    return oR;
}

Como podrán observar se valida el estatus de la aplicación, y tengo una vista de nombre mensaje a la cual deseo llamar si la aplicación tiene un estatus diferente de 1, en caso contrario si es 1 mostrar index.

Como decirle después de que valide redireccione a la vista mensaje o bien a index.

Gracias por su ayuda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Marco
Val: 3
Ha disminuido su posición en 2 puestos en ASP.NET (en relación al último mes)
Gráfica de ASP.NET

Como llamar a vista desde metodo de controlador en MVC Api C#

Publicado por Marco (3 intervenciones) el 05/01/2020 21:20:17
Actualizando información...

Seguí ejemplos de videos pero mi inexperiencia no visualizo que yo no necesitaba devolver un modelo, si no una vista, de hecho en el modelo que se recibe se recibe un solo parámetro por lo que he puesto directamente el parámetro a recibir, para enviarlo por url.

ahora bien, me sucede una situación extraña, si le digo al metodo que será un ActionResult me obliga a usar using System.Web.Mvc; y el HttpPost lo tengo que usar ahora: [System.Web.Mvc.HttpPost] en lugar de usar [HttpPost], y si uso View dentro del método en el controlador, me indica que "el nombre View no existe en el contexto actual".

1
2
3
4
5
6
7
8
9
10
11
12
[System.Web.Mvc.HttpPost]
public ActionResult VerificaAplicacion(int? id_aplicacion)
{
    AccesoViewModel oR = new AccesoViewModel();
    oR.resultado = 1;
    ...
 
    ..
 
    return View("Mensaje", oR);
 
 }

Que debo llevar a cabo para actualizar ? aclaro es un MVC Api

Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Wilfredo Patricio Castillo
Val: 169
Oro
Ha mantenido su posición en ASP.NET (en relación al último mes)
Gráfica de ASP.NET

Como llamar a vista desde metodo de controlador en MVC Api C#

Publicado por Wilfredo Patricio Castillo (75 intervenciones) el 06/01/2020 15:55:00
Lo que debes tener en cuenta es que un ASP.Net WEB API, no debe tener interfaz gráfica, por lo tanto las credenciales las debes pasar en el encabezado. Lee sobre JWT, que sería una de las formas de autenticar la WEB API y creo que la mas usada.

Saludos cordiales,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar