Compartir a través de


Procedimiento para usar el servicio web para buscar coincidencias entre dos perfiles de usuario

Última modificación: viernes, 30 de mayo de 2008

Hace referencia a: SharePoint Server 2010

El servicio web del servicio de perfiles de usuario ofrece varios métodos que puede usar para encontrar un administrador común, pertenencias comunes y contactos comunes en perfiles de usuario de manera remota.

Antes de usar este código, reemplace domainname y username con valores reales. Agregue también una referencia web en el siguiente texto en el proyecto de Microsoft Visual Studio:

  • Userprofileservice: el servicio web está ubicado en http://<dirección URL del sitio>/_vti_bin/userprofileservice.asmx.

Ejemplo

using System;
using System.Collections.Generic;
using System.Text;

namespace UserProfileWebServiceApp
{
    class Program
    {
        public static localhost.UserProfileService myService = 
            new localhost.UserProfileService();
        static void Main(string[] args)
        {

            myService.Credentials = 
                System.Net.CredentialCache.DefaultCredentials;
            FindCommonColleagues();
            FindCommonManager();
            FindCommonMemberships();
            FindInCommon();

        }
        static void FindCommonColleagues()
        {
            UserProfileWebService.localhost.ContactData[] contacts = 
                myService.GetCommonColleagues("domainname\\username");
            for (int i = 0; i < contacts.Length; i++)
            {
                Console.WriteLine(contacts[i].Name);
            }

            Console.Read();

        }

        static void FindCommonManager()
        {
            UserProfileWebService.localhost.ContactData contact = 
                myService.GetCommonManager("domainname\\username");
            Console.WriteLine(contact.Name);


            Console.Read();

        }

        static void FindCommonMemberships()
        {
            UserProfileWebService.localhost.MembershipData[] 
                memberships = 
                myService.GetCommonMemberships("domainname\\username");
            for (int i = 0; i < memberships.Length; i++)
            {
                Console.WriteLine(memberships[i].DisplayName);
            }

            Console.Read();

        }
        static void FindInCommon()
        {
            UserProfileWebService.localhost.InCommonData incommon = 
                myService.GetInCommon("domainname\\username");

            for (int i = 0; i < incommon.Colleagues.Length; i++)
            {
                Console.WriteLine(incommon.Colleagues[i].Name);
            }

            Console.Read();

        }
    }
}

Vea también

Tareas

Procedimiento para recuperar los elementos comunes entre dos perfiles de usuario