WCF命名管道绑定 - 通信异常

时间:2015-08-25 13:50:58

标签: c# wcf named-pipes

我有一个名为管道绑定的WCF,它可以在99%的时间内工作。我在发送大邮件时遇到了麻烦。特别是,长度大于65535的字符串。

实际的异常消息是:

  

服务器未提供有意义的回复;这可能是由   合同不匹配,过早的会话关闭或内部   服务器错误。

通常情况下,我会期待一条关于MaxMessageLength或类似内容的异常消息。

下面,这是我用来打开我的烟斗的功能。如您所见,我相信我正确设置了最大邮件大小。

    private void OpenPipe()
    {
        try
        {
            var pipeBinding = new NetNamedPipeBinding();
            pipeBinding.MaxReceivedMessageSize = int.MaxValue;                
            pipeBinding.MaxBufferSize = int.MaxValue;
            pipeBinding.MaxBufferPoolSize = int.MaxValue;                                

            pipeBinding.OpenTimeout = new TimeSpan(0, 10, 0);
            pipeBinding.ReceiveTimeout = new TimeSpan(0, 10, 0);
            pipeBinding.SendTimeout = new TimeSpan(0, 10, 0);
            pipeBinding.CloseTimeout = new TimeSpan(0, 10, 0);                

            pipeFactory =
new DuplexChannelFactory<ITsmNPContracts>(this, pipeBinding, new EndpointAddress("net.pipe://localhost/TsmPipe"));

            pipeFactory.Closed += pipeFactory_Closed;
            serviceClient = pipeFactory.CreateChannel();
            isChannelOpen = true;
        }
        catch (Exception e)
        {
            //channel not open
            lastError = e;
        }
    }

这似乎是一个非常差的异常消息,并没有给我任何关于问题的提示。有任何想法吗?感谢

-EDIT 我呼叫的特定功能也会立即失败。所以我不相信我会发送/接收超时。

0 个答案:

没有答案