1

我不想在WPF应用程序中使用 Web 服务。

我可以添加服务引用,所有对象都显示在对象浏览器中,除了ServiceClient它本身。

我尝试将服务添加到控制台应用程序中,一切都解决了。

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

我注意到在控制台应用程序中,他在文件中添加了一个ServiceModel节点,app.config但没有在WPF app.config文件中。

我能做些什么让它发挥作用吗?

4

2 回答 2

3

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

但是,我在使用“添加服务引用”生成代理和服务类时遇到了问题(通常)。

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

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

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

这是我可以根据您提供的信息给出的最佳答案。我相信您的问题在于 WCF 代理生成,而不是 WPF。在学习 WPF 时,最好让您的服务尽可能简单,并在添加任何可能破坏 WPF 的内容(如传递数据集或类结构)之前验证通信是否正常。

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

于 2011-07-27T15:07:32.747 回答
-1

现在您已经生成了 API,是时候开始添加类实例和调用方法了。真的,仅此而已。

查看此 codeproject文章以获得更详细的帮助。

顺便说一句,一个简单的“在 wpf 中使用网络服务”的谷歌显示了一个公制按钮的结果。

于 2011-07-27T14:24:12.733 回答