2011-05-04 19 views
7

Me gustaría agregar cuentas de usuario a mi aplicación web MVC 3. Para cada cuenta de usuario, me gustaría agregar un perfil de usuario correspondiente, con la información de contacto habitual de correo electrónico y dirección, etc. También puede agregar algunas preguntas de seguridad para cuando el usuario olvide sus credenciales de inicio de sesión.Asp.net MVC 3 cuentas y perfiles de usuario

He leído información sobre el uso de las opciones de perfil ASP.net proporcionadas y también algunas personas sugieren usar sus propias tablas de membresía, ya que agiliza la recuperación de la información del perfil del usuario, especialmente cuando crece la lista de usuarios.

¿Alguien me puede dar alguna idea sobre qué enfoque utilizar y también me indica algunos tutoriales que me muestran cómo implementar cuentas de usuario y perfiles dentro de una aplicación web MVC 3?

Muchas gracias D

Respuesta

5

Si no se van a consultar estas mesas en el exterior de lo que se construye en los perfiles, se quedan con el valor por defecto de la caja de papeles/perfil. Es un poco de trabajo adicional, solución de problemas y desarrollo de perfiles personalizados. No es tan difícil ... es solo un trabajo adicional. Si no tiene una necesidad específica, use lo que está integrado. En cuanto al rendimiento, observe en qué se ejecutará. ¿Tiene que sacar todo el rendimiento del hardware que está ejecutando? La mayoría de los lugares no, y tienen varios sitios en servidores que apenas tocan el disco y la CPU, en ese caso (como es bastante típico) usted está bien con todo incluido.

Para implementar las cuentas, cree un nuevo proyecto mvc3 y en Visual Studio en el explorador de soluciones, haga clic en el último ícono en la parte superior derecha para "configuración de asp.net" y administre

Sin embargo, hay muchos tutoriales sobre cómo implementar proveedores de tablas personalizadas en asp.net y se aplican tanto como mvc, ya que mvc es solo una aplicación asp.net.

+0

Hola Adam, probablemente quiera personalizar mis perfiles, por ejemplo, agregar una URL de imagen de usuario y también usar datos de perfil como el nombre de usuario y la imagen de usuario en otras áreas del sitio. ¿Tiene un enlace a un tutorial de perfil personalizado? Gracias – davey

+1

Ver: http://stackoverflow.com/questions/834166/implementing-custom-profile-provider-in-asp-net-mvc y http://johnnycoder.com/blog/2010/04/01/ asp-net-mvc-custom-profile-provider/ –

+0

Gracias por el enlace Adam. Ya he echado un vistazo rápido a esa publicación, pero estoy buscando más un tutorial paso a paso con un poco más de explicación. Además, el póster no utiliza EF, crea una instancia de SQL y llama a un sproc. – davey

5

ProfileBase es la clase que debe tener en cuenta.

algunos ejemplos de código copiado de uno de mi sitio web:

var profile = ProfileBase.Create(model.UserName); 
profile.SetPropertyValue("Identity.FirstName",model.FirstName); 
profile.SetPropertyValue("Identity.LastName", model.LastName); 
profile.SetPropertyValue("Identity.FullName", model.FullName); 
profile.SetPropertyValue("Contact.Email", model.Email); 
profile.SetPropertyValue("Contact.Phone", model.PhoneNumber); 
profile.Save(); 

Espero que sea de utilidad para usted.