在WPF应用程序中使用Web服务

时间:2011-07-27 14:19:37

标签: wpf web-services webservice-client service-reference consuming

我不想在WPF应用内部使用网络服务。

我可以添加服务参考,所有对象都显示在对象浏览器中,但ServiceClient本身除外。

我尝试将该服务添加到控制台应用程序中,并且一切都在那里完成。

使用网络服务的WPF个应用程序是否有一些限制。

我注意到在控制台应用中,他在ServiceModel文件中添加了app.config节点,但未在WPF app.config文件中添加。

我有什么办法可以让它发挥作用吗?

2 个答案:

答案 0 :(得分:2)

要具体回答您的问题,不,WPF中没有任何内容可以阻止您使用WCF创建Web服务引用。

但是,我使用“添加服务引用”来生成代理和服务类时遇到了问题(一般情况下)。

我首先要使用WCF测试客户端来测试您的Web服务是否正常运行,并且可以生成通用代理。

一旦WCF测试客户端工作,我将清除现有的服务引用。确保删除所有内容。然后再次添加服务引用。

如果您有复杂的Web服务,或者界面包含复杂的结构,您可能需要查看使用svcutil.exe来生成代理。

这是我能提供的最佳答案。我相信你的问题是WCF代理生成,但不是WPF。在了解WPF时,最好让您的服务尽可能简单,并在添加任何可能破坏WPF的内容之前验证通信是否有效(如传递数据集或类结构)。

P.S。您的可执行app.config必须有一个system.serviceModel部分进行通信,但它的缺席不会影响引用和代理生成。

答案 1 :(得分:-1)

现在您已经生成了API,是时候开始添加类实例和调用方法了。真的,这就是它的全部。

查看this codeproject文章了解更详细的帮助。

BTW,一个简单的谷歌“在wpf中使用网络服务”显示了一个公制但大量的结果。