Soy nuevo en MVC y realmente nuevo en el desarrollo web. Tengo alrededor de 7 años de experiencia en desarrollo, pero en servicios, bases de datos, modelos de objetos, etc. básicamente desarrollo de nivel medio y back-end. Estoy tratando de aprender ASP.NET y decidí construir un sitio usando MVC3 para un sitio personal para mí. Estaré alojando esto desde una cuenta en dotnet-hosts.com. Aquí está mi pregunta ... No tengo un dominio y usaré el proveedor integrado de membresía. Me di cuenta en el auto genera código que se creó cuando he añadido la plantilla de proyecto que en el AccountController
en el método ChangePassword
(ChangePasswordModel
modelo) existe esta línea de código ...MVC3 + Cómo obtener el nombre de usuario del usuario registrado actualmente
MembershipUser currentUser = Membership.GetUser(User.Identity.Name, true /* userIsOnline */);
Mi pregunta es específicamente alrededor User.Identity.Name
, parece que devolvería el nombre de usuario de Windows al igual que Environment.UserName
. La plantilla de Visual Studio que utilicé es la (Mobile Ready HTML5 MVC.NET) ya que deseo poder admitir clientes desde cualquier dispositivo ... PC con Windows, Apple, Windows Phone, iPhone, etc ... Si la llama al User.Identity.Name
es correcto, entonces me gustaría preguntar cómo funciona esto en dispositivos que no son Windows como un iPhone? Si mi suposición es correcta, esto solo funcionará para las computadoras con un dominio de Windows, ¿cómo puedo lograrlo? ¿necesitaría quizás usar algo de almacenamiento en caché? De ser así, ¿podría tomar el nombre de usuario y su dirección IP para usar como clave de caché en la página Autenticación?
Mi pregunta de alto nivel es ... ¿Cómo obtengo el userName del usuario registrado actual independientemente del dispositivo/plataforma? Sé que esta pregunta probablemente no está bien escrita y puede ser difícil de entender ... Me disculpo por eso. Soy nuevo en el desarrollo web y trato de mojarme los pies y me gustaría comenzar a utilizar la última tecnología.