How To Read User Profile In SharePoint 2010 Using Client Side Object Model

Posted at : Mar/06/2016
934 Views | 0 Comments

SharePoint 2013 telah menyediakan sebuah library baru (Microsoft.SharePoint.Client.UserProfiles) yang ditujukan untuk akses user profile dengan menggunakan .net managed client object model dimana library tersebut belum tersedia pada versi SharePoint sebelumnya. Pada SharePoint 2010 untuk akses user profile salah satu alternatifnya yaitu dengan mengakses Web Services yang telah disediakan di SharePoint.

SharePoint 2010 web services dibangun dengan menggunakan asmx web services yang sudah kita kenal sejak kemunculan web service pertama kali di rilis .net framework versi 1.0. Oleh karena itu untuk memudahkan mengakses service tersebut dari visual studio harus menggunakan web services reference, bukan service reference yang menggunakan wcf.

Url sharepoint web services untuk akses user profile yaitu http://servername/_vti_bin/UserProfileService.asmx

Service tersebut menyediakan beberapa web method, salah satunya yaitu GetUserProfileByName yang membutuhkan input parameter berupa user name (tanpa nama domain) yang akan dibaca user profilenya. Properti-properti yang dikembalikan dari web method tersebut disimpan dalam array PropertyData[] sehingga untuk membaca semua nilai properti nya harus dilakukan dengan looping item array tersebut. Apabila kita ingin mengakses salah satu atau beberapa properti saja dapat dilakukan dengan akses array indexer, dan tidak dapat diakses dengan nama propertinya, oleh karena itu mengetahui indeks nya dilakukan dengan looping terlebih dahulu agar dapat mengetahui indeks dari properti yang akan dibaca.

Pada artikel kali ini akan dibuat sebuah Windows Form Application. Project tersebut untuk contoh ini menggunakan visual studio 2013 dan c# sebagai bahasa pemrogramannya. Tentunya kita dapat menggunakan visual studio 2010, atau visual studio 2015 dan bahasa visual basic. Berikut ini adalah langkah-langkahnya:

1. Akses url user profile sharepoint web services.

2. Buat sebuah Windows Form Application project. 

3. Tambahkan kontrol button dan listbox ke dalam form.

4. Klik kanan project dan pilih menu Add – Service Reference

5. Klik button Advanced.

6. Klik button Add Web Reference.

7. Masukkan url user profile service.

    Masukkan user name dan password untuk akses service.

8. Ubah nama web reference jika dibutuhkan dan klik button Add Reference.

9. Jika berhasil, maka di project tersebut akan muncul node Web References.

10. Ketikkan kode berikut ini di dalam form code editor.

using usp = GetUserProfileServices.UserProfileServiceReference;

namespace GetUserProfileServices
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void ReadUserProfile()
        {
            usp.UserProfileService uspSvc = 
                new usp.UserProfileService();

            System.Net.NetworkCredential netCred =
                new System.Net.NetworkCredential(
                    "UserNameForConnectingToWebService", 
                    "Password");
            
            uspSvc.Credentials = netCred;
            usp.PropertyData[] userProps;
            userProps = uspSvc.GetUserProfileByName(
                "UserNameToSearch");

            listBox1.Items.Clear();

            for (int i = 0; i < userProps.Length; i++)
            {
                listBox1.Items.Add("Property-" + i + " : " + 
                    userProps[i].Name);
                for (int j = 0; j < userProps[i].Values.Length; j++)
                {
                    listBox1.Items.Add(new string
                        (Convert.ToChar("-"), 10) 
                        + "Property-" + i + ", " + "Value-" + j + " : "
                        + userProps[i].Values[j].Value);
                }
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                ReadUserProfile();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
    }
}

11. Jalankan aplikasi. Hasilnya dapat dilihat seperti pada gambar berikut ini:


[Comments]


[Write your comment]

Name (required)

Email (required-will not published)

Comment
zbyc
Input code above below (Case Sensitive) :

ABOUT ME

Rully Yulian MF
Rully Yulian Muhammad Firmansyah | Founder & IT Trainer Native Enterprise | MCT (2008-2019) | MVP (2009-2016) | Xamarin Certified Professional | MTA | MCAD | MCPD | MOS | Bandung, West Java, Indonesia.

[Read More...]

TOP DOWNLOAD

Mapping Hak Akses User Pada MenuStrip Sampai Control Button
downloaded 6982 times

Bagaimana caranya menginstal database ketika deploying sebuah aplikasi?
downloaded 4893 times

Simple Voice Engine Application With Sound Player Class...
downloaded 4045 times

Change Group,Sort Order, Filtering By Date in Crystal Reports
downloaded 3460 times

WinForms DataGrid Paging With SqlDataAdapter
downloaded 2881 times


LINKS

CERTIFICATIONS

Xamarin Certified
MOS 2007
MCT
MCPD
MCTS
MCAD.NET
ASP.NET Brainbench

NATIVE ENTERPRISE

Native Enterprise - IT Training

FOLLOW ME

Youtube  Facebook  Instagram  LinkedIn   Twitter

RSS


NATIVE ENTERPRISE NEWS

© Copyright 2006 - 2024   Rully Yulian MF   All rights reserved.