问题标签 [wcf-extensions]

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 投票
1 回答
693 浏览

c# - wcfextras 仍然生成许多文件而不是单个 WSDL 文件

这是app.config我得到的:

我添加wcfextras到项目引用,甚至将其设置为复制本地。

结果,它只生成相同的 WSDL 文件,导入 XSD 等等:

我怎样才能使它只生成一个单一的 WSDL 文件?

0 投票
1 回答
4616 浏览

c# - WCF 消息检查器不起作用

最近,我正在探索某种方法来记录我的 WCF 服务处理的任何请求/响应。

在此之前,我对跟踪选项有一些不好的经验。现在,我还不知道如何从跟踪中获取实际的响应和请求(我尝试了 svctraceviewer 工具,但它没有得到对我有意义的东西)。即便如此,生成的跟踪文件也已损坏(其中包含一些意想不到的字符)。

大约三四天前,我了解了消息检查器技术。我阅读了本手册并在我的其他项目中实现了客户端消息检查器。实际上,我可以看到我的 wcf 客户端发送的任何请求以及该请求的其他服务响应。

我希望做另一侧日志记录同样容易(例如从客户端获取服务请求和服务器对它们的响应)。但我不冷。以下是详细信息:

几乎所有代码都使用 NotImplementedException 存根,但我在每个方法和属性上都设置了断点。此外,我将讲述他们是如何被击中的。

以下是该服务的安装方式:

服务等级没有任何特别之处。

那么,这个建筑是如何运作的。正如我之前提到的,我在每个方法和属性中都设置了断点。在我开始调试后,我们按以下顺序获得断点命中:

好的,让我们尝试向服务发送一些东西,看看它是如何反应的。所以我发送了一些请求(使用 WSDL 生成)来处理http://localhost:8733/并获得有效的响应。我为此使用了 SoapUI。VS 中没有任何断点活动!消息检查器不起作用。服务方法命中的断点,它表明该方法在没有消息检查器的情况下确实有效。

我还尝试使用此代码附加行为来设置服务(因此没有在 app.config 中指定行为):

在这个选项中,我们得到了这个断点命中的顺序:

这就对了。而且也没有任何检查员在发送服务请求方面的活动。

那么我怎样才能让它工作呢?

0 投票
1 回答
331 浏览

wcf - WCFExtras XmlComments ...它们在哪里?

我花了最后 3 个小时试图让 WCFExtras 使用他们在 codeplex 站点以及其他地方描述的步骤将我的 XML 注释输出到我的 WSDL。最终,我发现 WCFExtras 还生成了第二个 WSDL,可作为单个文件使用,并且 XML 注释在文件中。

我的问题是——因为我在任何地方都找不到这些信息——它应该是这样工作的吗?WCFExtras 的意图是从不尝试在 WSDL WCF 中输出 XML 注释吗? WCF 已经自动生成了?如果我有兴趣获得这些评论,我是否应该从现在开始生成这个其他 WSDL 文件?

我希望这里有人知道。谢谢!

0 投票
0 回答
1530 浏览

wcf - 使用 HTTPS 的 CustomTextMessageEncoder 的 WCF CustomBinding

我正在开发一个 WCF REST 类型的服务,该服务将通过 HTTPS 上的 POST(IIS 上的 ASP.NET 4.0)接受 text/xml 类型的文档。有人可以帮我处理 web.config 吗?我正在使用 CustomTextMessageEncoder 的示例代码进行测试,以解析文档。我收到错误消息:“消息级安全性不支持手动寻址。配置绑定('CustomBinding'、' http ://tempuri.org/ ')以使用传输安全性或不进行手动寻址。”

不幸的是,如果我关闭 ManualAddressing,我会得到一个不同的错误。我不确定如何打开 TransportSecurity,因为它是自定义绑定。

我正在做的 web.config 的主要部分是:

0 投票
1 回答
398 浏览

c# - 在 GET 请求的 WCF 扩展性中无法按名称找到 DispatchOperation

我最近遇到了一个让我陷入困境的问题。

我在 WCF 中实现了一个自定义 AuthorizationManager,它首先必须按名称提取操作。WCF 服务通过 REST 和 SOAP 端点公开,因此我必须检查多个位置以找到继续通过身份验证过程所需的信息。

一切都很好,我有大约 15-20 个服务运行良好,但我最近遇到了一个问题,我无法使用我的正常方法提取操作名称。

拉取操作的代码如下:

这对于为 REST 和 SOAP 端点提取正确操作很有用,但现在该操作为空。

服务定义如下:

一切似乎都很标准,我只是不明白为什么这与我的其他服务有任何不同。

0 投票
1 回答
584 浏览

c# - WCF 可扩展性消息编码器实现

如何将 ReadMessage 和 WriteMessage 映射到可以控制类库之外的消息编码的事件?

我只想要 StrongType (没有动态/参数对象 [] ) onReadMessage 和 onWriteMessage 事件有没有办法重载可以接受两个方法的委托/事件?

0 投票
1 回答
19898 浏览

c# - 通过 ProxyServer 发送 WCF 请求

这是我的客户端 WCF 配置文件:

使用 CustomMessageEncoder 绑定来压缩和加密消息。

这是问题:我们的局域网中有代理服务器[172.20.20.254:8088]。

我从 ControlPanel 更改了 SystemDefaultProxy 它不起作用!

并在客户端配置文件中使用一些选项,就像你在这里看到的那样,钢不起作用

0 投票
2 回答
9995 浏览

wcf - 如何使用 ServiceHostFactory 在 IIS 托管 WCF 服务中向客户端端点添加行为

我正在研究实现 IDispatchMessageInpector 和 IClientMessageInpector 以查看 AfterReceiveRequest 和 BeforeSendRequest 方法中的消息对象。我的要求是在 WCF 服务的代码级别进行更改。无配置更改。如何将此行为附加到调用此服务的所有端点以及服务本身。实施 IContractBehaviour 对我有帮助吗?

编辑 1:WCF 服务托管在 IIS 上。是否可以通过代码添加行为?

编辑 2:似乎使用 ServiceHostFactory 我们可以实现这一点。如何向 webconfig 中定义的客户端端点添加行为?

0 投票
0 回答
258 浏览

c# - 在运行时将具有不同合同的端点添加到 wcf 服务

我正在尝试对通过我的 api 托管的任何 wcf 服务实现通用的“IsAlive”功能。我尝试在运行时向服务主机添加一个端点,它使用 IIsAlive 接口作为其回调。

问题是 wcf 检查并发现服务实现类没有实现该契约。我不介意这一点,我可以稍后使用运行时代理或实例提供程序来解决它,这将返回我对该方法的实现。所以我需要抑制 wcf 对我大喊大叫,这可能吗?

如果没有,有没有办法达到我想要的结果?(公开一个具有主机方法和获取代理方法的 api,它将向服务添加 isalive 功能,而无需用户实现它)

谢谢

0 投票
1 回答
491 浏览

wcf - WCF:通过装饰为操作注入自定义标头

嗨,如果操作被修饰,我需要在消息中注入自定义标头。

到目前为止我做了什么?1) 通过继承 Attribute 和 IOperationBehavior 创建一个 Attribute 2) 附加一个自定义 OperationInvoker 与操作

属性:

界面:

现在的问题是,我不知道在哪里修改消息头,我可以通过 operationDiscription.Messages[] 访问消息,但文档说任何修改都会产生意想不到的结果。

谢谢, 阿维纳什