Vediamo come richiamare un web service usando la PowerShell.
Per prima cosa dobbiamo creare una dll che rappresenta il webservice che vogliamo richiamare e successivamente, tramite questa, consumeremo il webservice.

Per l'esempio utilizzeremo un web service di SharePoint 2007 (WSS3 - MOSS)

Creiamo la dll

Iniziamo con il creare il file .cs, posizioniamoci in una cartella vuota e da linea di comando digitiamo

DOS / Batch file

wsdl http://localhost/_vti_bin/Lists.asmx
e successivamente compiliamolo

DOS / Batch file

csc /t:library Lists.cs
ottenendo così il file Lists.dll

I file citati si trovano, normalmente, in:
C:\Programmi\Microsoft Visual Studio 8\SDK\v2.0\Bin\wsdl.exe
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\csc.exe

Consumiamo il web service

Apriamo la PowerShell e digitiamo

PowerShell

#carico la dll del webservice
$dll = Get-Item Lists.dll
[void][System.Reflection.Assembly]::LoadFrom($dll)

#apro il webservice
$wslist = New-Object Lists

#passo le credenziali
$wslist.Credentials=[System.Net.CredentialCache]::DefaultCredentials

#accedo alla lista
$doc = $wslist.GetLists("Pages")

#visualizzo alcune info
$doc | select Title, Itemcount, defaultviewurl
ottengo un risultato simile a questo

Text

Title                 ItemCount             DefaultViewUrl
-----                 ---------             --------------
Pages                 3                     /Pages/Forms/AllItems.aspx
Tags:
PowerShell200 SharePoint498 SharePoint 2007218 Web service16
Potrebbe interessarti anche: