Wednesday, September 30, 2009

Sharepoint_Web_Services

Autor:André Lage
Publicação:__________
Download:Documento
(EN)TranslateLink

Windows Forms e Sharepoint Webservices

 

Olá pessoal,

Umas das dificuldade quando desenvolvemos aplicações de apoio ao SharePoint é realizar a necessidade de um servidor onde o SharePoint se encontra instalado, agora imaginem podes desenvolver ferramentas de apoio e acesso a dados em SharePoint, sem desenvolver no Servidor nem utilizar as DLLs de Sharepoint comoMicrosoft.SharePoint.dll”, a resposta é simples, utilizar Web Services. J.

Cenário:

Muitas vezes existe a necessidade de realizar aplicações no cliente de apoio ou Listagem de Dados em SharePoint com outros Bancos de dados para integração feita a medida.

Óptimo, como os Web Services de SharePoint podem ajudar?.... J

 

OverView

 

Microsoft SharePoint disponibiliza um conjunto de Web Services que servem de apoio a aplicação externas.

Web Services são métodos para listagem e apoio utilizando a o método SOAP e XML, bem utilizadas é uma ferramentas muito importante no teu desenvolvimento.

Os Web Services encontram-se no servidor onde o SharePoint está instalado:

%COMMONPROGRAMFILES%\Microsoft Shared\web server extensions\12\ISAPI

Link com Lista dos WebServices que o SharePoint fornece http://msdn.microsoft.com/pt-br/library/bb862916.aspx.

Neste exemplo vou realizar uma aplicação em Windows Forms para Listar todos os utilizadores de um Site de SharePoint.

Para chamar o web services irei utilizar o método UserGroupque vou usar para Listar os utilizadores do Site.

Exemplo:

http://[url]/_vti_bin/UserGroup.asmx?WSDL

WebService2.JPG

Umas das funcionalidades do .Net é a capacidade de converter os nossos Web Services em Classes .Net...., isso mesmo que leu... J

Microsoft SharePoint para cada área Web Services com bastantes métodos que vão servir para apoio ao nosso desenvolvimento.

 

Conversão de WebService para Classe  .CS

 

PATH "C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin"

wsdl.exe /l:CS /n:Empresa /out:C:\ListaSharepoint\UserGroup.cs http://[url]/_vti_bin/UserGroup.asmx?WSDL

Comandos:

/l: Linguagem que vai ser convertido “VB” ou “CS”

/n: Namespace da Class construída

/out: ficheiro convertido do webService

WebService1.JPG

Depois de utilizar a linha de comando para converter o Web Service em Class, podemos adicionar na nossa solução Windows Forms e utilizar os seus métodos para desenvolvimentos.

 

Windows Forms Listagem de utilizadores

 

Após adicionar a nova Classe podemos começar a utilizar o métodos para listar os nosso utilizadores, para utilizar conteúdo dos nossos Web Services será necessário utilizar classes de XML para retornar utilizadores.

 

WebService3.JPG

WebService4.JPG

 

Exemplo para Listagem utilizadores:

            UserGroup utilizadores = new UserGroup();

           

            //Site de Sharepoint a pesquisar utilizadores

            utilizadores.Url = String.Concat(TxtUrl.Text,"/_vti_bin/usergroup.asmx");

           

            //Credenciais do utilizador

            utilizadores.Credentials = CredentialCache.DefaultCredentials

            XmlNode userNodes = utilizadores.GetAllUserCollectionFromWeb();

 

            DataSet dsXML = new DataSet();

            using (XmlNodeReader reader = new XmlNodeReader(userNodes))

            {

                dsXML.ReadXml(reader);

            }

            String[] Username = new String[dsXML.Tables["User"].Rows.Count];

           

            //Listagem dos utilizadores

     for (int i = 0; i < dsXML.Tables["User"].Rows.Count; i++)

            {

                LstUtilizadores.Items.Add(dsXML.Tables["User"].Rows[i]["loginname"].ToString());

            }

            }

 

WebService.JPG

Feito, Listamos todos os utilizadores do site de SharePoint utilizando os Web Services de SharePoint, podem começar a fazer aplicação em Windows Forms, sem utilizar a DLL “Microsoft.SharePoint.dll”.

Em anexo fica o projecto.

Espero que tenham gostado, um grande abraço. J


Post a Comment