При разработке своего веб-приложения на Asp.net mvc 4, мне потребовалось узнать ID текущего пользователя (что в онлайне в данный момент) в формате GUID. Поиск по Гуглу выдал мне мало информации, лишь различные версии:
using System.Web.Security; .... // NOTE: This is a static method .. which makes things easier to use. MembershipUser user = Membership.GetUser(User.Identity.Name); if (user == null) { throw new InvalidOperationException("User [" + User.Identity.Name + " ] not found."); } // Do whatever u want with the unique identifier. Guid guid = (Guid)user.ProviderUserKey;
Или просто:
Guid userGuid = (Guid)Membership.GetUser().ProviderUserKey;После долгих раздумий, проб у меня получился вот такой код в нужном Controll:
if (User.Identity.IsAuthenticated) { var username = User.Identity.Name; Guid guid = Guid.Parse(Membership.GetUser(username).ProviderUserKey.ToString()); ViewBag.Message = "My GUID: " + guid.ToString(); return View(); }
Показываем в View полученный GUID Id юзера онлайн (для примера):
@{ ViewBag.Title = "Index"; } <h2>@ViewBag.Message</h2> <div> Hello my friends! </div>
Тем самым мы смотрим, что юзер авторизован, затем идентифицируем, получаем Guid ID, выводим в представлении(для примера, что бы показать что получили)
Комментариев нет:
Отправить комментарий