问题标签 [wcf-client]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - WCF REST Starter Kit - 名称为“UriTemplateMatchResults”的属性已存在
我刚开始使用 WCF REST Starter Kit。
我创建了一个返回对象数组的简单服务。
使用浏览器,一切正常,但是当我使用 WCF 客户端时,我得到一个 ArgumentException。
我没有使用 IIS,代码如下:
合同:
启动服务:
启动客户端:
服务器和客户端在同一个解决方案中,我在两者中使用相同的接口(描述服务合同)。
异常显示:“名称为 'UriTemplateMatchResults' 的属性已存在。” 这就是堆栈跟踪:
触发异常的类-> Microsoft.ServiceModel.Web.WrappedOperationSelector
堆栈跟踪:
我究竟做错了什么?
更新:我禁用了帮助页面,该服务现在正在运行。它是一个错误吗?
谢谢!
安德烈·卡鲁奇
wcf - 如何确保您没有收到 WCF 故障状态异常?
我得到了这个例外:
通信对象 System.ServiceModel.Channels.ServiceChannel 不能用于通信,因为它处于故障状态。
WCF 服务使用默认的 wsHttpBinding。无论我在哪里使用 WCF,我都以以下方式使用它:
消息中显示的错误行似乎在最后一个 proxy.close 之后。不知道发生了什么。我正在从 Visual Studio 08 中启动该服务。
这是跟踪信息:
wcf - WCF 测试客户端应用程序是否存在已知限制?
我知道这已经发生过几次了。如果我将许多 OperationContract 添加到 ServiceContract,WCF 测试客户端应用程序会引发异常:
“添加服务失败。服务元数据可能无法访问。确保您的服务正在运行并公开元数据。”
在详细信息中,它继续:
错误:无法从 获取元数据。请求失败,HTTP 状态为 400:错误请求。
如果我删除了几个运营合同,那么一切都很好。在测试客户端之外也很好。
c# - WCF 客户端“使用”块问题的最佳解决方法是什么?
我喜欢在一个using
块中实例化我的 WCF 服务客户端,因为它几乎是使用实现的资源的标准方式IDisposable
:
但是,正如这篇 MSDN 文章中所述,将 WCF 客户端包装在一个using
块中可能会掩盖任何导致客户端处于故障状态(如超时或通信问题)的错误。长话短说,当Dispose()
被调用时,客户端的Close()
方法会触发,但由于它处于故障状态而引发错误。然后,原始异常被第二个异常掩盖。不好。
MSDN 文章中建议的解决方法是完全避免使用using
块,而是实例化您的客户端并使用它们,如下所示:
与using
街区相比,我认为这很丑陋。每次需要客户端时都要编写大量代码。
幸运的是,我发现了一些其他的解决方法,例如在(现已不复存在的)IServiceOriented 博客上的这个。你开始:
然后允许:
这还不错,但我不认为它像using
块一样富有表现力和易于理解。
我目前尝试使用的解决方法是我第一次在blog.davidbarret.net上读到的。基本上,无论您在哪里使用,您都可以覆盖客户端的Dispose()
方法。就像是:
这似乎能够using
再次允许该块,而没有掩盖故障状态异常的危险。
那么,在使用这些变通方法时,我还需要注意哪些其他问题?有没有人想出更好的办法?
wcf - WCF 测试客户端错误:无法调用服务
尝试将 WCF 测试客户端与我的 WCF 服务一起使用时出现错误。这是服务代码:
我可以使用 WCF 测试客户端连接到服务,但是当我尝试调用 GetEmployee(employeeNumber) 时,我收到以下错误:
调用服务失败。可能原因:服务离线或无法访问;客户端配置与代理不匹配;现有代理无效。有关更多详细信息,请参阅堆栈跟踪。您可以尝试通过启动新代理、恢复到默认配置或刷新服务来恢复。
通过从浏览器发送请求,我能够成功调用此服务。
知道为什么我不能使用 WCF 测试客户端吗?
soap - 可能使用格式错误的故障消息?
我有一个 WCF 客户端与我无法控制的未知服务器实现进行通信。这个客户端工作正常,只是不喜欢,看起来是,格式不正确的 SOAP 错误消息。我收到的消息如下所示:
我相信根据soap模式,子元素不应该被限定并且看起来像:
有什么我可以配置或覆盖的东西,以便我可以使用以后一种格式到达的消息,以便我可以使用错误消息而不是 xml 异常?
wcf - 使用 Wcf 流式传输图像文件
我想通过 Wcf 将大图像发送到服务器。我可以将其作为字节 [] 传递。我该怎么做。什么是 MTOM...我在哪里可以找到示例...?
c# - 如何从一个客户端使用多个 WCF 服务
我还在学习整个 WCF 的东西,所以请耐心等待。
我拥有的是使用 C# 和 VS 2008 创建的两个自托管服务:
Service # 1 添加两个数字并返回结果。
服务 #2 返回数字的平方。
我希望客户端能够将两个数字发送到服务 1,得到总和,然后将总和发送到服务 2 并得到平方。
我为这两个服务生成了两个代理,并且我可以在它们上使用 Intellisense,所以这部分应该可以工作。
现在如何配置我的 app.config 文件,以便我可以与这两个服务进行通信?现在,每次我尝试这样做时都会遇到异常。
[如果我一次只有一个应用程序文件中的配置,客户端可以正常工作,并尝试只调用该服务器。]
我想这是一个非常愚蠢的问题,答案可能是“以_____方式构造配置文件”,但谷歌似乎根本没有示例/指南。
有人知道怎么做吗?
注意:从一个客户端客户端使用多个 WCF 服务 虽然听起来像重复不是我想要的。
编辑:感谢marc_s,我得到了它的工作
由于这两种服务都在不同的应用程序中运行,我不需要拆分服务器配置文件,但这是我对客户端配置文件所做的:首先使用 SvrUtil.exe 自动生成配置文件,然后以这种方式合并它们:
...
...
web-services - WCF 和 gSOAP - 可互操作的代码?
我正在尝试使用 SOAP 1.2 协议编写一个简单的 WCF 服务器 + gSOAP 客户端概念验证应用程序。这是服务器代码:
然后我启动服务并使用以下命令生成代码:
然后我编译以下 C++ 代码:
这会生成错误 8 (SOAP_MUSTUNDERSTAND)。有没有人曾经生成工作 WCF 到 gSOAP 链接?我究竟做错了什么?
wcf - 每个经过身份验证的 WCF 客户端连接是否都需要 CAL?
就像标题所说的那样。您开发的与 WCF 服务器的每个经过身份验证的 WCF 客户端连接是否都需要 Windows CAL?
http://www.microsoft.com/windowsserver2008/en/us/client-licensing.aspx
微软在该页面上的许可确实让它听起来很像,但我找不到任何可以证实甚至否认这一点的东西。
有人知道吗?