Asp.net core 从netcoreapp2.0访问wcf

Asp.net core 从netcoreapp2.0访问wcf,asp.net-core,.net-core,Asp.net Core,.net Core,我有一个asp dotnet core 2.0项目,需要与下游WCF服务对话 项目文件的目标是netcoreapp2.0 我已经为System.ServiceModel.Primitives添加了nuget软件包,并且除了System.ServiceModel.Configuration命名空间中的某些内容外,我几乎拥有了所需的一切,这些内容在nuget上似乎不可用 在过去,我曾在netcore1.1项目中成功地与WCF服务进行过交流(通过将其定位于net461) 但是,如果您想利用netCor

我有一个asp dotnet core 2.0项目,需要与下游WCF服务对话

项目文件的目标是
netcoreapp2.0

我已经为
System.ServiceModel.Primitives添加了nuget软件包,并且除了
System.ServiceModel.Configuration
命名空间中的某些内容外,我几乎拥有了所需的一切,这些内容在nuget上似乎不可用

在过去,我曾在netcore1.1项目中成功地与WCF服务进行过交流(通过将其定位于net461)

但是,如果您想利用netCore2.0的功能,这似乎不是一个选项。如果以net461为目标,则无法访问netcore2.0功能

这可能吗

我做错什么了吗

您能否以net461为目标,同时使用netcore2.0功能

或者有没有一种方法可以让我以netcoreapp2.0为目标,仍然访问
System.ServiceModel.Configuration

或者我需要以netcoreapp2.0为目标,并执行其他允许我访问
System.ServiceModel.Configuration
的操作吗


谢谢

如果您至少使用VS 2017 15.5版,您可以将WCF服务添加为连接服务。向导将添加所需的包并生成客户端代码。(在以前的VS 2017版本中,您需要预览扩展)

您可以从“添加连接的服务”上下文菜单项访问此向导:


如果您至少使用VS 2017 15.5版,您可以将WCF服务添加为连接服务。向导将添加所需的包并生成客户端代码。(在以前的VS 2017版本中,您需要预览扩展)

您可以从“添加连接的服务”上下文菜单项访问此向导:


是的,我知道这一点。但是,我仍然需要访问一个特定的通道工厂,它是上面提到的名称空间。谢谢,不过你可以在网站上查找相关问题。net core上的wcf客户端LIB只是完整的.net Framework支持的LIB的一个子集是的,看起来是这样。当我瞄准net461时,我能够访问所需的channelfactory,这让人恼火。我想这是有道理的。因为这是完整的.net。基本上,我想使用NetCore2.0功能,但仍然能够参考这个特殊的双工通道工厂-感谢againso尝试以net471为目标。这使我能够访问netcore2.0的功能以及我需要的wcf功能。但是,我得到以下编译错误“包Microsoft.AspNetCore.All 2.0.0与net471不兼容”。有什么想法吗?以net471为目标似乎是一个合理的计划吗?哦,还有最新的nuget,所以Microsoft.AspNetCore.All只能在.NET Core上工作,而不能在.NET Framework上工作。如果你想为ASP.NET核心应用程序使用.NET Framework,你需要单独引用你需要的包。是的,我知道这一点。但是,我仍然需要访问一个特定的通道工厂,它是上面提到的名称空间。谢谢,不过你可以在网站上查找相关问题。net core上的wcf客户端LIB只是完整的.net Framework支持的LIB的一个子集是的,看起来是这样。当我瞄准net461时,我能够访问所需的channelfactory,这让人恼火。我想这是有道理的。因为这是完整的.net。基本上,我想使用NetCore2.0功能,但仍然能够参考这个特殊的双工通道工厂-感谢againso尝试以net471为目标。这使我能够访问netcore2.0的功能以及我需要的wcf功能。但是,我得到以下编译错误“包Microsoft.AspNetCore.All 2.0.0与net471不兼容”。有什么想法吗?以net471为目标似乎是一个合理的计划吗?哦,还有最新的nuget,所以Microsoft.AspNetCore.All只能在.NET Core上工作,而不能在.NET Framework上工作。如果要将.NET Framework用于ASP.NET核心应用程序,则需要分别引用所需的包。