我创建了一个WCF服务,它接收来自(java)客户端的请求并返回一个字符串。到目前为止,它运行良好,但我需要在调用我的服务时处理一个独立的函数。
我一直在阅读并发现我可以使用async / await执行此操作。所以我已将代码更改为以下内容:
IService:
public interface IService
{
[OperationContract(Action = "")]
Task<string> receptor(string ordenFirmada);
}
服务:
public async Task<string> receptor(string ordenFirmada)
{
return await Task.Factory.StartNew(() => opReceptor(ordenFirmada));
}
public string opReceptor(string ordenFirmada)
{
string res = string.Empty;
(...) //indepent process goes here
return res;
}
但是当我调试它时,受体#34等待&#34;直到opReceptor完成为客户端提供响应。 换句话说,如何在调用我的服务时将一些字符串返回给客户端,并且当客户端很高兴处理我的返回字符串时,我的服务会触发一个函数(完全独立于客户端调用)来执行某些操作在内部(客户端不关心这个,客户端只需要返回前一个字符串并关闭套接字)。
提前致谢!