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

时间:2018-03-01 23:53:12

标签: c# .net wsdl ebxml

我正在寻找开发一个使用AS4将消息发布到ebMS3平台的C#应用​​程序。我是这个领域的新手。有人可以帮忙吗?是否有任何第三方库可以轻松完成此操作?如果没有,我们如何使用来自c#解决方案的AS4发布消息。

2 个答案:

答案 0 :(得分:3)

我刚刚实施了自己的AS4解决方案,这是一项艰巨的任务。特别是因为.NET不支持带附件的SOAP。您需要了解很多背景知识 - AS4所基于的所有不同规格。我没有找到用.NET编写的AS4 API,如果它不是一个独立的解决方案......

首先要了解AS4,这个博客是一个好的起点: https://www.codit.eu/blog/2016/02/03/as4-for-dummies-part-ii-messaging-overview/

然后您必须了解大多数EBMS3规范: http://docs.oasis-open.org/ebxml-msg/ebms/v3.0/core/ebms_core-3.0-spec.html

话虽如此 - 这并非不可能。

我一直在看Sander谈论的AS4.NET框架,它编写得很好,是交换AS4消息的一个很好的起点。我用它作为测试终点。

因此,除非您需要将AS4直接合并到现有产品中(我们需要),否则我只能推荐使用AS4.NET。

AS4.NET也是开源的(并且符合e-SENS配置文件),因此您可以查看他们的代码库,让您通过AS4中的硬件激发灵感。

对于MIME部分,我可以推荐Mimekit:https://github.com/jstedfast/MimeKit 对于一些加密/签名的东西,Bouncycastle很棒:http://www.bouncycastle.org/csharp/

答案 1 :(得分:2)

不确定它是否可以用作库,但对于欧盟委员会内的项目,开发了基于.NET的开源AS4实现。您可以在EC的代码存储库中找到它here。我不知道是否有任何支持,所以如果这很重要,你应该考虑另一个实现。可以使用EC测试的与其自己的AS4配置文件一致的解决方案列表here(或者如果通过搜索“as4一致性测试实现”该链接不起作用)

请注意,大多数是您连接到执行AS4消息交换的独立应用程序。大多数提供不同的集成选项,因此您应该能够将其集成到您的解决方案中。