Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 对WCF服务的UWP呼叫未返回_C#_Wcf_Uwp - Fatal编程技术网

C# 对WCF服务的UWP呼叫未返回

C# 对WCF服务的UWP呼叫未返回,c#,wcf,uwp,C#,Wcf,Uwp,我在VisualStudio中有两个单独的UWP解决方案,它们连接到两个内部WCF服务 第一个解决方案/项目连接到服务并在大约100毫秒内返回数据。 第二个项目尝试获取数据,但从未从服务调用返回。使用完全相同的代码。我看不出这些项目有什么不同。这是基本的客户端代码,在等待10分钟后,它永远不会超过第2行 我创建了一个显示相同行为的全新UWP项目,以及一个立即返回预期数据的单元测试项目 我在服务器上打开了WCF跟踪日志记录,服务似乎以完全相同的方式处理成功(单元测试)请求和不成功(UWP)请求 有

我在VisualStudio中有两个单独的UWP解决方案,它们连接到两个内部WCF服务

第一个解决方案/项目连接到服务并在大约100毫秒内返回数据。
第二个项目尝试获取数据,但从未从服务调用返回。使用完全相同的代码。我看不出这些项目有什么不同。这是基本的客户端代码,在等待10分钟后,它永远不会超过第2行

我创建了一个显示相同行为的全新UWP项目,以及一个立即返回预期数据的单元测试项目

我在服务器上打开了WCF跟踪日志记录,服务似乎以完全相同的方式处理成功(单元测试)请求和不成功(UWP)请求

有人能帮忙吗

        var client = new ChecksServiceReference.ChecksServiceClient();
        ObservableCollection<string> Centres = new ObservableCollection<string>();
        try
        {
            Centres = await client.CentresAsync();
        }
        catch(FaultException ex)
        {
            string x = ex.Message;
        }
        finally
        {
            await client.CloseAsync();
        }
        return await Task.FromResult(Centres);
var client=new ChecksServiceReference.ChecksServiceClient();
ObservableCollection Centres=新的ObservableCollection();
尝试
{
centers=wait client.CentresAsync();
}
捕获(FaultException-ex)
{
字符串x=例如消息;
}
最后
{
等待client.CloseAsync();
}
返回等待任务。从结果(中心);

您的呼叫是否被包装在try/catch语句中,以便确保请求仍处于挂起状态且没有崩溃?是的,try/catch是相同的-更改代码以反映您是否使用类似Fiddler的工具查看了网络流量?请求是否返回?我打赌这是同步上下文死锁。尝试通过调用更改该行,以便我们可以看到问题所在:wait client.CentresAsync().configurewait(false);我一直试图从类构造函数内部获取结果,方法是在最后与“.result”同步调用异步方法,但没有返回。相反,我创建了一个异步任务,在其中我使用wait关键字调用了该方法。在构造函数中,我调用了异步任务(尽管是同步的,即不等待)