Получение профиля пользователя по имени пользователя

01.08.2009

Для того чтобы получить данные профиля пользователя по имени можно использовать метод ProfileBase.Initialize(userName, IsAuthenticated) или прочитать данные напрямую из провайдера.

Обычно данные профиля загружаются автоматически, и затем обратившись к HttpContext.Current.Profile можно получить данные профиля для текущего пользователя. Но для административных задач, например сохранение или проверка наличия данных в профилях всех пользователей возникает необходимость загрузить данные профиля по имени пользователя. К сожалению по классам работы с профилями не совсем очевидно как это сделать. Есть два способа, первый проинициализировать класс ProfileBase , а второй – прочитать данные профиля напрямую из провайдера.

Первый способ:

ProfileBase p = new ProfileBase();
p.Initialize(userName, true);
string userPhone = p["Phone"] as string;

Второй способ: чтение данных напрямую из провайдера при помощи метода GetPropertyValues для текущего провайдера. Этот способ хорош тем что позовляет прочитать названия свойств и их значения, даже если профайлы не работают (как на пример в MOSS). Подробнее об этом способе читайте в статье Get/Set custom profile properties in Profile Provider for MOSS

Список свойств: Для того чтобы получить список свойств, заданных в web.config в секции profiles/properties можно воспользоваться статическим свойством ProfileBase.Properties. Это может потребоваться при реализации чтения профиля вторым способом через метод GetPropertyValues

Entry Filed under: Программирование. Метки: , .

Leave a Comment

Required

Required, hidden

Some HTML allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <pre> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Subscribe to the comments via RSS Feed


Рубрики

Google Custom Search Engine

Мой GCE по ASP.NET блогам
Все желающие могут добавлять в него блоги и сайты по asp.net и вебпрограммной тематике

Свежие записи

Продуктивность и time management

IT outsourcing sites

Meta

Облако

37signals architecture asp.net basecamp c# configuration content content extractor css dependancy injection design design patterns di forms google docs google web html css web iis7 inversion of control ioc log4net logger mashup outsourcing project management sql svn timemanagement tools tortoise url urlrewriting Бесплатный оффис Легальное ПО Программирование архитектура архитектура приложения дизайн web инструменты книги методики мотивация программы продуктивность утилиты

Top Clicks

RSS Некоторые посты из блогов, которые я читаю

Страницы

 

Август 2009
Пн Вт Ср Чт Пт Сб Вс
« Июл    
 12
3456789
10111213141516
17181920212223
24252627282930
31  

Архивы