我一直在网上寻找一种通过 silverlight 应用程序调用 Web 服务的简单方法,但无法决定如何去做。连接到这个网站的最简单方法是什么:http ://wsf.cdyne.com/WeatherWS/Weather.asmx并返回一个带有指定邮政编码的 xml(我已经使用 AJAX 完成了这项工作,我只是想尝试一下使用 silverlight 作为替代方法让它工作)。很感谢任何形式的帮助!
谢谢!
我一直在网上寻找一种通过 silverlight 应用程序调用 Web 服务的简单方法,但无法决定如何去做。连接到这个网站的最简单方法是什么:http ://wsf.cdyne.com/WeatherWS/Weather.asmx并返回一个带有指定邮政编码的 xml(我已经使用 AJAX 完成了这项工作,我只是想尝试一下使用 silverlight 作为替代方法让它工作)。很感谢任何形式的帮助!
谢谢!
嗯..这很容易。在您的 Silverligt 项目中,单击“Reference”,选择“Add Service Reference..”并添加气象服务的 wsdl ( http://wsf.cdyne.com/WeatherWS/Weather.asmx?WSDL )。Visual Studio 11 Beta 使用basicHttpBinding生成 WCF 代理。并将其用作任何服务。
UODATE:添加下一个参考
using SilverlightApplication1.ServiceReference1;
并实施。
public MainPage()
{
InitializeComponent();
var weather = new WeatherSoapClient();
weather.GetWeatherInformationCompleted
+= new EventHandler<GetWeatherInformationCompletedEventArgs>(OnGetWeatherInformationCompleted);
weather.GetWeatherInformationAsync();
}
private void OnGetWeatherInformationCompleted(object sender, GetWeatherInformationCompletedEventArgs e)
{
// Get data from e.Result
}
在我看来,您应该阅读一些有关 Web 服务和 WCF 的内容。