C# NET内核中的SOAP?

C# NET内核中的SOAP?,c#,.net,web-services,soap,.net-core,C#,.net,Web Services,Soap,.net Core,如何在.NETCore中使用SOAP?是否有与in.NETCore(不仅仅是一个简单的SOAP客户端,而是一个功能齐全的堆栈)等价的产品 对不起,如果这是一个非常基本的问题,我的搜索到目前为止没有得到任何明确的答案 Microsoft目前不打算为.NET Core提供SOAP服务器端框架。WCF ServiceHost和ASMX都不可用。现在判断哪一家非微软公司会加入并成为主导者还为时过早 随着ASP.NETWebAPI的引入和REST端点的兴起,WCF已死。WCF客户端是一个互操作的故事,而不

如何在.NETCore中使用SOAP?是否有与in.NETCore(不仅仅是一个简单的SOAP客户端,而是一个功能齐全的堆栈)等价的产品


对不起,如果这是一个非常基本的问题,我的搜索到目前为止没有得到任何明确的答案

Microsoft目前不打算为.NET Core提供SOAP服务器端框架。WCF ServiceHost和ASMX都不可用。现在判断哪一家非微软公司会加入并成为主导者还为时过早


随着ASP.NETWebAPI的引入和REST端点的兴起,WCF已死。WCF客户端是一个互操作的故事,而不是一个向前发展的故事(完整故事在这里:)

几个月前,由于WCF客户端的限制(当与Java Web服务集成时,有人创建了一个响应类,该类与方法同名且位于同一命名空间中,当WCF客户端发送请求时,序列化失败-在SO中找不到相关问题)我必须创建一个使用HttpClient下划线的SOAP HTTP客户端我们正在生产中成功地使用它,并支持.NET Core和Xamarin应用程序。请尝试一下。我推荐2.0.0-RC03版,因为自1.x版以来有了一些重大改进。

这里有一个小技巧,我在ASP.NET 5.0 Web应用程序中使用了“framework 452”

不幸的是,新的“添加连接服务”->“WCF服务”仅在针对“.Net Core”时有效,因此我创建了一个与我的web应用同名的基本控制台应用程序

控制台应用程序允许添加“服务引用”。一旦添加VS2015将在文件夹“服务引用”中创建所有服务引用

只需将文件夹内容移动到Web解决方案,并使用接受
HttpBindings
EndPoint
参数的客户端构造函数即可

在我的情况下,我正在连接到Echosign服务初始化客户端,如下所示:

using (EchoSignDocumentService16PortTypeClient service = new EchoSignDocumentService16PortTypeClient(new BasicHttpBinding(BasicHttpSecurityMode.Transport), new EndpointAddress(adddress)))
{
...
}

我的旧客户端需要SOAP,因此我使用.NET framework创建了一个独立的SOAP库,该库与我的旧客户端兼容,托管在一个独立的环境中。(SOAP.mywebsite.com)。然后在www.mywebsite.com(使用asp.NET核心创建)上,我有一个rest接口。SOAP层调用rest接口。
调用rest接口的库是使用Swashback生成的。

为了解决这个问题……我在.Net 4.5中创建了一个连接到.Net Core中不支持的本机SOAP客户端的nuget包。接下来,我创建了一个针对.Net framework的.Net Core应用程序。这允许我在VS 2017中使用nuget包而不会出错。

,从2017年12月(v15.5)起,您现在可以使用WSDL将生成的WCF客户端从使用连接服务的.NET标准项目添加到服务中。在解决方案资源管理器中,您可以右键单击“依赖项”或右键单击“添加…”下的项目

WCF客户端支持也包括在内,但不会有服务器端。这有点令人难过,因为在某些情况下,SOAP在服务之间的后端通信方面仍然是优越的。令人难过的是,对于新的堆栈(核心本质上是)这是一个正确的决定。REST取代了SOAP之前的CORBA和RPC。但是对现有环境和策略的一点支持会很好。我读了很多遍。但是WCF不仅仅是SOAP!我可以理解REST取代SOAP,但是流、命名管道、tcp、双工等呢?REST永远不会捕捉到这些。。。同意。但是,只有10%的使用率。在2017年的异构世界中,这些都不适合。Microsoft正在寻求对此的反馈:我一直在寻找一个有效的解决方案,以避免使用soap服务,并无意中发现了您的项目,但是示例和教程似乎与库不匹配。这是v1.x vs 2.x iss吗ue?嗨@Marqueone,我可以试着帮你。请随意打开一个GitHub问题的代码示例,让我看看。这是一个很好的项目。我遇到的唯一问题是,我得到的svcutil生成的类没有XmlRoot属性,因此使用它进行序列化不起作用:(ServiceModel在.net core中不存在“…仅在针对.Net Core时有效…”应该注意的是,虽然搜索可能会将人们带到这里,但OP只询问了.Net Core。