C# ASP.NET核心应用程序中的WCF函数不可用
我只是尝试在ASP.NET核心中使用WCF服务。服务很有效,我得到了我想要的结果 WCF代码:C# ASP.NET核心应用程序中的WCF函数不可用,c#,wcf,asp.net-core,asp.net-core-mvc,C#,Wcf,Asp.net Core,Asp.net Core Mvc,我只是尝试在ASP.NET核心中使用WCF服务。服务很有效,我得到了我想要的结果 WCF代码: public List<SelectMaschines> Maschinen(SelectMaschines c_Auswahl) { do something that works; return lst_masch; } public interface I_DO_Service { [OperationContract] List<SelectM
public List<SelectMaschines> Maschinen(SelectMaschines c_Auswahl)
{
do something that works;
return lst_masch;
}
public interface I_DO_Service
{
[OperationContract]
List<SelectMaschines> Maschinen(SelectMaschines var123);
[OperationContract]
SelectReasons Prod2(SelectReasons var231);
}
public List Maschinen(选择maschines c_Auswahl)
{
做一些有效的事情;
返回lst_masch;
}
公共接口I_DO_服务
{
[经营合同]
列出Maschinen(选择MASCHINES var123);
[经营合同]
选择原因产品2(选择原因var231);
}
并将实施情况纳入核心项目工作中。但定义的函数不能仅作为异步函数使用。
那么ASP.NET内核调用WCF有什么不同呢?或者我可以只使用异步函数吗?我认为这里的异步意味着ASP.NET内核将异步调用WCF 因此,可以使用异步函数,如:
var var_list=wait i_DO_Service.MaschinenAsync()代码>我认为这里的异步意味着asp.net核心将异步调用wcf
因此,可以使用异步函数,如:
var var_list=wait i_DO_Service.MaschinenAsync()代码>对于Asp.Net核心中的WCF,只会为客户端代码生成Async
方法,这意味着您可以并且应该使用Async
函数
这是因为SynchronizationContext
已从Asp.Net Core中删除,它将无法使用.Net Core
下的Sync
WCF方法
因此,对于您的问题,请将索引
更改为异步任务
,并通过异步
方法调用WCF服务。对于Asp.Net核心中的WCF,只会为客户端代码生成异步
方法,这意味着您可以并且应该使用异步
函数
这是因为SynchronizationContext
已从Asp.Net Core中删除,它将无法使用.Net Core
下的Sync
WCF方法
因此,对于您的问题,请将索引
更改为异步任务
,并通过异步
方法调用WCF服务。将您的操作更改为异步操作。您可以创建WCF代理来调用任何符合标准的SOAP服务。在ASP.NET Core中,默认情况下,生成的代理使用异步方法进行服务操作,正如它们应该使用的那样。请将您的操作更改为异步操作。您可以创建WCF代理来调用任何符合标准的SOAP服务。在ASP.NET核心中,生成的代理默认使用异步方法进行服务操作,这是它们应该使用的。谢谢Obay。你的回答也是解决方案的一部分,但爱德华说得更详细。谢谢奥贝。你的回答也是解决方案的一部分,但爱德华说得更详细。谢谢。现在它起作用了。从这一点上,我可以寻找更详细的异步信息。谢谢。现在它起作用了。从这一点上,我可以寻找更详细的异步信息。