标签: ebxml

如何修改WCF以处理不同(非SOAP)格式的消息?

我正在与WCF合作,与第三方公司交换消息.需要在与ebXML规范匹配的信封中发送和接收消息.理想情况下,我希望尽可能多地使用WCF堆栈,并避免使用一种方法来处理它们,因为在这种情况下,这意味着要再次编写WCF的大部分基础结构.

从我最初的研究中可以看出,这将需要我编写自己的自定义绑定,但我很难在MSDN的文档中找到清晰度.

我已经能够找到很多关于每个实现的详细文档,但很少关于如何将它们全部放在一起.在Peiris和Mulder的"Pro WCF"中,我所拥有的书籍似乎也同样关注这些主题.

我的目标是以下内容.

发送和接收的消息必须格式化如下,其中第一个元素的名称是要执行的操作的名称,子元素是请求消息的有效负载,其格式如下:

<?xml version="1.0" encoding="UTF-8"?>
<op:DoSomething xmlns:op="http://my.ebXML.schema.com" xmlns:payload="http://payload.company.com">
    <op:AnObject>
        <payload:ImportantValue>42</payload:ImportantValue>
    </op:AnObject>
</op:DoSomething>
Run Code Online (Sandbox Code Playgroud)

响应将是:

<?xml version="1.0" encoding="UTF-8"?>
<op:AcknowledgementResponse xmlns:op="http://my.ebXML.schema.com" xmlns:payload="http://payload.company.com">
    <op:ResponseObject>
        <payload:Ok>True</payload:Ok>
    </op:ResponseObject>
</op:AcknowledgementResponse>
Run Code Online (Sandbox Code Playgroud)

由于消息都是由XML模式描述的,因此我使用XSD.exe将这些消息转换为强类型对象.有关架构,请参阅https://gist.github.com/740303.请注意,这些是示例模式.我不能在不违反客户保密协议的情况下发布真实的模式(你也不会因为它们庞大而想要我).

我现在希望能够编写服务实现,如下所示:

public class MyEndpoint : IMyEndpoint
{
    public AcknowledgementResponse DoSomething(AnObject value)
    {
        return new AcknowledgementResponse
            {
                Ok = True;
            };
    }
}
Run Code Online (Sandbox Code Playgroud)

任何帮助将非常感激.

xml wcf wcf-binding ebxml

11
推荐指数
2
解决办法
4270
查看次数

如何从 C# 客户端应用程序执行 ebMS3 AS4 消息传递

我正在寻找开发一个 C# 应用程序,该应用程序使用 AS4 将消息发布到 ebMS3 平台。我是这个领域的新手。有人可以帮忙吗?有没有第三方库可以轻松做到这一点?如果没有,我们如何使用 ac# 解决方案中的 AS4 发布消息。

.net c# wsdl ebxml

1
推荐指数
1
解决办法
1767
查看次数

标签 统计

ebxml ×2

.net ×1

c# ×1

wcf ×1

wcf-binding ×1

wsdl ×1

xml ×1