问题标签 [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.

0 投票
2 回答
1590 浏览

wcf - 在 WCF 服务中公开自定义复杂接口类型的问题

我正在尝试使用 WCF 从另一个应用程序中获取对象。使用内置类它可以正常工作,但是在尝试从 WCF 操作返回自定义接口类型时遇到了问题。

无论我在两个应用程序中分别包含接口,还是将其指定为共享程序集,我都会得到相同的结果:带有消息“从管道读取错误:无法识别的错误 109”的 CommunicationException。

界面如下所示:

我的服务器如下所示:

这是我的接口实现:

客户端看起来像这样:

除了这一行之外,一切都像魅力一样:

它给了我一个 CommunicationException 消息“从管道读取错误:无法识别的错误 109”。据我所知,这是由于故障状态导致的管道损坏,但我不知道为什么,或者更重要的是如何修复它。有任何想法吗?

我没有配置文件,因为上面的代码中已经完成了所有操作,所以我不知道如何打开跟踪,否则我也会包含它。

0 投票
3 回答
1321 浏览

entity-framework - 如何让 EF 对象在 WCFTestClient 中工作

我有一个包含一些 EF 对象的解决方案。我想将它们传递给客户。

当我尝试在 WCFTestClient.exe 中对此进行测试时,我的对象出现此错误:

“wcf 测试客户端不支持此操作”

有没有办法进行设置,以便我可以将我的实体对象传递给客户端,或者我将不得不创建一个单独的类来复制所有内容。

瓦卡诺

0 投票
2 回答
2957 浏览

wcf - 使用 WCF 在运行时确定 wsHttpBinding

我有一个使用 WCF 和 wsHttpBindings 公开 Web 服务的 Web 应用程序。可以在不同的机器和不同的 url 上安装应用程序。这意味着每个 WCF 服务位置都不同。

我正在构建一个 Windows 服务,它将引用每个应用程序并执行一项任务。每个任务都需要调用 Web 应用程序上的服务。我知道绑定都是在 app.config 中设置的,但是有没有更简单的方法来动态调用服务,或者我将如何构建 app.config?

0 投票
3 回答
13409 浏览

wsdl - 使用 svcutil 生成 WebService 代理的问题

在我们的应用程序中,我们被迫使用多个 WebService。一开始我们只使用了“添加服务引用”菜单选项,以创建 WCF 代理。

该向导没有生成 DataContract,而是生成了一个 XML-Serializable 类。到目前为止,很糟糕,但这不是杀手。但是,后来我们注意到,我们正在丢失数据,因为生成的代理在归因时添加了 Order 属性,这导致了问题。

现在我们尝试使用 SVCUTIL.EXE 从 WSDL 生成代理类,但我们总是收到以下错误消息:

英文的错误信息是这样的

“未处理来自命名空间‘ http://schemas.xmlsoap.org/wsdl/soap/ ’的可选 WSDL 扩展元素‘body’。”

原始 WSDL 如下所示:

(拧)代理类看起来像这样:

任何帮助都会很棒。

0 投票
1 回答
255 浏览

wcf - 在创建 WCF 代理实例时选择配置文件

是否可以通过给定的配置文件而不是 app.config 创建 WCF 代理?
非常感谢!

0 投票
2 回答
5306 浏览

wcf - WCF 客户端配置:如何检查端点是否在配置文件中,如果没有则回退到代码?

希望制作一个通过 WCF 将序列化消息对象发送回服务器的客户端。

为了让最终开发人员(不同部门)更容易,最好他们不需要知道如何编辑他们的配置文件来设置客户端数据。

也就是说,端点也没有嵌入/硬编码到客户端中也很棒。

在我看来,混合场景是最容易推出的解决方案:

IF(在配置中描述)使用配置文件 ELSE 回退到硬编码端点。

我发现的是:

  1. new Client();如果未找到配置文件定义,则失败。
  2. new Client(binding,endpoint);作品

所以:

但是有没有办法检查(除了try/catch)来查看配置文件是否声明了一个端点?

如果在配置文件中定义但配置不正确,上述内容是否也会失败?区分这两种情况会很好吗?

0 投票
4 回答
4381 浏览

wcf - 具有不同合同但业务对象相同的两个 WCF 服务

例如,我在 IIS 中托管了两个服务。

从 UserService 中的 Authenticate 操作返回的 User 对象和从 DeviceService 中的 GetAllDevices 操作返回的 DeviceCollection 都有一个 Customer 的子对象定义。Customer 是一个业务对象,与 User 和 Device 对象在同一个程序集中。

我的问题出在客户端 - 当我调用设备操作时

编译器抱怨以下消息:

参数 1 - 无法从 UserService.Customer 转换为 DeviceService.Customer

我可以很好地连接到这两个服务,问题是客户的对象定义。我真的不想把操作放在同一个服务中,因为它们似乎自然地生活在自己的服务中。我想我要问的是其他程序员如何处理这样的问题?

干杯,斯图尔特

0 投票
1 回答
3854 浏览

c# - .NET Web 服务客户端 - 客户端发现响应内容类型为“text/plain”,但预期为“text/xml”

我有一个 ASP.NET 网页,其中包含对 SOAP WSDL 的 Web 引用。如果我调用与此 WSDL 关联的方法(这些方法位于另一台服务器上),一切正常。但是,我希望能够动态更改 WSDL 指向的端点地址。原因是我们为不同的组托管相同的 Web 服务集,并且我们喜欢跟踪谁在使用 Web 服务。因此,每个集合都有自己的 URL。

我尝试将我的肥皂客户端对象上的“Url”属性更改为不同的端点,但是当我这样做时,这些方法会返回此错误:

客户端发现响应内容类型为“text/plain”,但预期为“text/xml”

我在想 Url 属性让代理类误以为我现在正在使用 REST Web 服务?

这是我的一些代码:



这就是我得到错误的地方。有谁知道动态更改 SOAP 调用端点的修复或不同方法?

0 投票
1 回答
2699 浏览

wcf-client - 对 WCF 的 Web 应用程序引用不生成代理类?

目前,我们的网站必须使用 WCF 服务,因为我们有 x64 Web 服务器,并且代码依赖于不兼容 x64 的 32 位第三方程序集。所以 WCF 服务是一个包装器。

当我添加“服务参考”时,会生成几个文件,但没有 .cs 文件。我认为应该有一个 reference.cs 文件,其中包含供客户端代码使用的代理存根。

我在这里想念什么?

0 投票
5 回答
6432 浏览

wcf - 如何从 WCF 服务返回接口?

可以说我有一些接口:

我在整个代码库中使用此代码。IFoo 进程需要移动到不同的系统上(x64 与 x32 的区别),这就是我们使用 WFC 的原因。我的 WCF 服务实现了这个接口。当我创建“服务引用”时,会创建代理存根,但会更改接口。

我尝试将 IBar/Bar 定义为 DataService 和 DataContract,没有区别。有没有办法使用我的界面生成代理代码?

我在想如果模拟对象可以生成我的接口对象进行测试,那么我不应该能够让服务也兑现它吗?还是做了一些愚蠢和错误的事情?