2010-11-09 21 views
0

我有一個Silverlight應用程序,我需要能夠從幾乎任何Web服務中獲取數據。我想提供用戶在運行時指定web服務的URL的功能,然後我的應用程序會發現服務並提供一些用戶界面來選擇web方法並填寫必要的參數。然後用戶可以調用web服務,應用程序將在UI上顯示數據。Silverlight:動態發現和調用Web服務

我該如何做到這一點?

+0

你打算怎麼處理隨機數據? – 2010-11-09 20:19:41

回答

1

我假設你是指SOAP Web服務? .NET中有很多組件,您通常希望使用它(例如,基於CodeDOM的WCF元數據下載和客戶端代理生成功能,以及用於處理WSDL和XSD模式的各種類)。不幸的是,這些不在Silverlight中。所以,我可以想到兩種方法:

1)在Silverlight中手動實現通用SOAP客戶端(即手動實現元數據下載,WSDL解析,XSD解析等) - 這將是非常困難的,除非你能找到一些現有的代碼可以適應Silverlight(即使它可能仍然非常困難)

2)通過服務器進行操作。服務器將完成所有困難的部分,而Silverlight將只顯示UI。仍然不是一件容易的事,但可能;您可以通過使用Reflector反向設計WCF測試客戶端應用程序的工作方式並從此開始。