如何从PowerShell访问Web服务?

时间:2010-01-07 18:35:27

标签: .net windows web-services powershell

我想从windows powershell中访问带有给定(简单)WSDL的Web服务。

有一种简单的方法吗?

2 个答案:

答案 0 :(得分:20)

# Working example of how to use PowerShell (version >= 2) to access a web service.
$svc = New-WebServiceProxy –Uri ‘http://www.webservicex.net/stockquote.asmx?WSDL’

$svc | Get-Member  # Use Get-Member to discover the interface of a web service.
# Get stock quotes. 
$svc.GetQuote(‘BA’)   # Boeing
$svc.GetQuote(‘AMZN’) # Amazon
$svc.GetQuote(‘SBUX’) # Starbucks

答案 1 :(得分:6)

一种方法是使用WSDL.exe to generate wrapper classes - 编译生成的源并使用PowerShell中的强类型类。整个generate - compile - instantiate进程可以从PowerShell自动完成。

如果您使用的是PowerShell 2.0,请按New-WebServiceProxy中的建议使用the other answer