none
Registro y login de usuario RRS feed

Respuestas

  • >>no se como lo hacen estos de Microsoft ya directamente en la plantilla yo para crear el proyecto he usado la plantilla de asp.net mvc y con autentificacion de cuentas individuales

    puede que este usando alguna entidad como modelo de la view que este dentro de las clase de asp.net membership

    por lo que tengan atributos de data annotation ya definidos

    si usas en la view la clase RegisterViewModel entonces parece que tu controlas la validaciones mediante atributos, si en la view se usa otra clase como modelo seguro esta este aplicando las validaciones, o sea apunto a que estan definidas dentro de librerias de seguridad que no puedes ver el codigo

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta onzulinapps jueves, 26 de febrero de 2015 11:45
    jueves, 26 de febrero de 2015 11:27

Todas las respuestas

  • hola

    quizas debas validar las clase como ser RegisterViewModel y ver que atributos de Data Annotation define para las validaciones

    las validaciones que usa mvc estan definidas en las clases del modelo

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    miércoles, 25 de febrero de 2015 13:58
  • Hey a mi me da que las validaciones las realiza con javascript que no usa validaciones desde el lenguaje C# vamos, por eso he preguntado ademas llamara por algun sitio dentro de este codigo al motor de js miralo tu mismo

    es una mezcla de html con razor en realidad aunque he puesto que es HTML

    @model RestAPIPlanningActivities.Models.RegisterViewModel
    @{
        ViewBag.Title = "Registrarse";
    }
    
    <h2>@ViewBag.Title.</h2>
    
    @using (Html.BeginForm("Register", "Account", FormMethod.Post, new { @class = "form-horizontal", role = "form" }))
    {
        @Html.AntiForgeryToken()
        <h4>Cree una cuenta nueva.</h4>
        <hr />
        @Html.ValidationSummary("", new { @class = "text-danger" })
        <div class="form-group">
            @Html.LabelFor(m => m.Email, new { @class = "col-md-2 control-label" })
            <div class="col-md-10">
                @Html.TextBoxFor(m => m.Email, new { @class = "form-control" })
            </div>
        </div>
        <div class="form-group">
            @Html.LabelFor(m => m.Password, new { @class = "col-md-2 control-label" })
            <div class="col-md-10">
                @Html.PasswordFor(m => m.Password, new { @class = "form-control" })
            </div>
        </div>
        <div class="form-group">
            @Html.LabelFor(m => m.ConfirmPassword, new { @class = "col-md-2 control-label" })
            <div class="col-md-10">
                @Html.PasswordFor(m => m.ConfirmPassword, new { @class = "form-control" })
            </div>
        </div>
        <div class="form-group">
            <div class="col-md-offset-2 col-md-10">
                <input type="submit" class="btn btn-default" value="Registrarse" />
            </div>
        </div>
    }
    
    @section Scripts {
        @Scripts.Render("~/bundles/jqueryval")
    }
    

    mi proyecto sobre le que trabajo Leandro es este justo el mismo en le que estoy trabajando, el REST por cierto ya funciona preo claro quiero hacer registro y login tambien por web aunque me tocara hacer mucho trabakjo tambien por delante.

    https://github.com/onzulinapps/RestService-asp.net/tree/master/RestAPIPlanningActivities

    El formulario lo puedes encontrar en el codigo en views account Register.cshtml

    saludos

    miércoles, 25 de febrero de 2015 15:57
  • hola

    si lees sobre Data Annotation y habilitas unobtrusive en el config de asp.net mvc, este genera el javascript para las validaciones segun la definicion del modelo de la view

     ASP.NET MVC Client Side Validation

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    miércoles, 25 de febrero de 2015 16:02
  • Ok muchas gracias aqui lo explican, lo que veo que por lo visto ne la plantilla ya se esta aplicando de alguna forma, este tema de jquery, y no se como lo hacen estos de Microsoft ya directamente en la plantilla yo para crear el proyecto he usado la plantilla de asp.net mvc y con autentificacion de cuentas individuales y ya viene algo de esto hecho, pero si yo realizo esto coimo viene en el articulo ¿pondre yo las reglas de autentificacion? saludos.
    jueves, 26 de febrero de 2015 11:10
  • >>no se como lo hacen estos de Microsoft ya directamente en la plantilla yo para crear el proyecto he usado la plantilla de asp.net mvc y con autentificacion de cuentas individuales

    puede que este usando alguna entidad como modelo de la view que este dentro de las clase de asp.net membership

    por lo que tengan atributos de data annotation ya definidos

    si usas en la view la clase RegisterViewModel entonces parece que tu controlas la validaciones mediante atributos, si en la view se usa otra clase como modelo seguro esta este aplicando las validaciones, o sea apunto a que estan definidas dentro de librerias de seguridad que no puedes ver el codigo

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta onzulinapps jueves, 26 de febrero de 2015 11:45
    jueves, 26 de febrero de 2015 11:27
  • Bueno ahora entiendo algo mas como va esto pero a mi me salen mas reglas de validacion que estas que vienne aqui como por ej que la clave debe contener numeros y letras y que debe contener letras minusculas o mayusculas, cosa que no esta definida aqui

    public class RegisterViewModel
        {
            [Required]
            [EmailAddress]
            [Display(Name = "Correo electrónico")]
            public string Email { get; set; }

            [Required]
            [StringLength(100, ErrorMessage = "El número de caracteres de {0} debe ser al menos {2}.", MinimumLength = 6)]
            [DataType(DataType.Password)]
            [Display(Name = "Contraseña")]
            public string Password { get; set; }

            [DataType(DataType.Password)]
            [Display(Name = "Confirmar contraseña")]
            [Compare("Password", ErrorMessage = "La contraseña y la contraseña de confirmación no coinciden.")]
            public string ConfirmPassword { get; set; }
        }
    Segun he leido lo que me has pasado la solucion es pasar de lo que viene hecho por la plantilla y definirlo todo a mano no, saludos.

    jueves, 26 de febrero de 2015 12:45
  • PUes mi pregunta es ¿como desarrollo mis validaciones? porque no me queda muy claro con la documentacion que me has pasado

    imagino que este metodo lo que hace es

    @using (Html.BeginForm("Register", "Account", FormMethod.Post, new { @class = "form-horizontal", role = "form" }))

    llamar al AccountController al metodo este

    public async Task<ActionResult> Register(RegisterViewModel model)

    Lo que entiendo es que tu me dices que utilice otro objeto RegisterViewModel por ej que se llame de otra manera o el mismo RegisterViewModel pero modificado por mi, y hay otro problema veo que en la validacion tambien hay mensajes distintos a los que vienen aquien el dataanotation entoces imagino que me los darapq lee en el javascript, imagino que podre crear mi propio javascript y que lea ahi, eso si de javascript tengo poca idea, saludos.

    viernes, 27 de febrero de 2015 10:25
  • Bueno yo me refiero a reglas como por ej. estas propiedades que he visto dentro de password validator, ¿como las cambio? y en el caso de no poder cambiarlas debe haber forma de hacerlo de otra manera, modificar por ej que las propiedades RequireDigit, RequireLengh todo eso, saludos.
    viernes, 27 de febrero de 2015 11:15
  • Buenas tardes, a ver estoy mosqueado y no se como funciona por la siguiente razon yo le doy al boton de registro de usuario y le pongo por ej onzulin@dominio.com el que sea, y despues la clave jlsmjlsm vale y en la clase RegisterViewModel no tengo nada que me diga que la clave que he introducido no funcione, sin embargo no funciona, me dice

    • Las contraseñas deben tener al menos un carácter que no sea una letra ni un dígito. Las contraseñas deben tener al menos un dígito ('0'-'9'). Las contraseñas deben tener al menos una letra en mayúscula ('A'-'Z').

    Eso me lo dice una vez le doy al boton de registrarse, ¿donde esta eso controlado? saludos.

    lunes, 2 de marzo de 2015 11:34