none
Error al redirigir una url dentro de un actionresult RRS feed

  • Pregunta

  • Hola a todos y gracias por leer mi pregunta.

    Tengo el siguiente problema, cuando un usuario quiere ingresar al sistema X, aparece bien, lo reconoce, pero cuando se utiliza cierta acción, en mi ambiente de desarrollo funciona bien, pero cuando esta publicado no funciona.

     <input type="submit" class="boton" value="Seleccionar" formaction="Seleccionar" formmethod="post" />

    Detona el siguiente actionresult

      [HttpPost]
            public ActionResult Seleccionar(Models.Usuario user, FormCollection form)
            {
    
                try
                {
                    Models.Usuario col = new Models.Usuario();
                    int Id = 0;
                    if (user.RBD == 0)
                    {
                        Id_Colegio = Convert.ToInt32(form["ID"]);
    
                        string url = col.CreacionToken(Id_Colegio, Convert.ToInt32(Session["RUN"]));
    
                        if (url != "")
                        {
                                 return Redirect(url);
                        }
                    }
                    else
                    {
                        Id = col.BuscarIdColegio(user.RBD);
    
                        string url = col.CreacionTokenAdministrador(Id);
    
                        if (url != "")
                        {
                                   return Redirect(url);
                        }
                    }
                    if (Id_Colegio == 0)
                    {
                        user.Alerta = "No se encontro el cliente";
                           return RedirectToAction("Login", "Login");
                    }
    
                    return RedirectToAction("Login", "Login");
    
                }
                catch (Exception ex)
                {
                    user.Alerta = ex.Message;
                    return RedirectToAction("Login", "Login", user);
                }
            }

    Y cuando se debe realizar el redirect, a la url seleccionada lo hace, pero en ambiente de desarrollo, pero ya publicado me redirige a

    /Login/Seleccionar

    No se si es una configuración del IIS, o en el código.

    Saludos y muchas gracias.


    viernes, 29 de abril de 2016 17:09

Respuestas

  • completa el

    @using (Html.BeginForm())

    si es que quieres definir a que controller y action debe invocar cuando se genera el submit

    sino por defecto toma el contexto en ese caso sera el controller de login

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta Ricardo_1984 domingo, 1 de mayo de 2016 23:17
    viernes, 29 de abril de 2016 18:18

Todas las respuestas

  • hola

    pero este se genera cuando se produce el submit del form ?

    porque quizas debas indicar el @Html.BeginForm()


    @using(Html.BeginForm("Seleccionar", "<nombrecontroller>", FormMethod.Post)){
    
    
        <input type="submit" class="boton" value="Seleccionar"  />
    
    }



    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    viernes, 29 de abril de 2016 17:39
  • Completo el CSHTML es así.

    @using (Html.BeginForm())
    {
        @Html.ValidationSummary(true, "");
        <div class="container">
            <section id="content">
                <form>
    
    
                 
                    <div>
                        @Html.TextBoxFor(u => u.UserName, new { @class = "btexto", placeholder = "R.U.N. sin digito verificador", @Value = "", @type = "number" })
                        @Html.ValidationMessageFor(u => u.UserName)
                    </div>
    
                    <div>
                        @Html.PasswordFor(u => u.Password, new { @class = "bpass", placeholder = "Contraseña" })
                        @Html.ValidationMessageFor(u => u.Password)
                    </div>
                    <div>
                    </div>
                   
                    <input type="submit" class="boton" value="Ingresar" />
                    <br>
                    <br />
                    <div class="button">
    
                        <span style="color: red;" id="alerta">@Model.Alerta
    
                            <br>
                            <br>
                        </span>
    
                    </div>
    
                </form>
              
            </section>
        </div>
        <div class="content" id="seleccion">
            <form>
             
    
                <input type="submit" class="boton" value="Seleccionar" formaction="Seleccionar" formmethod="post" />
    
            </form>
        </div>
    
    
    }
    Tengo dos input, uno cuando ingresa, que pasa bien y otro el de seleccionar, que es el ultimo en el que falla.


    viernes, 29 de abril de 2016 17:45
  • completa el

    @using (Html.BeginForm())

    si es que quieres definir a que controller y action debe invocar cuando se genera el submit

    sino por defecto toma el contexto en ese caso sera el controller de login

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta Ricardo_1984 domingo, 1 de mayo de 2016 23:17
    viernes, 29 de abril de 2016 18:18