4

我有一个通过 TCP 通道工作的自托管 WCF 服务。

除了属于一个客户的所有 Win7 机器(这些在域上)外,这表现良好。

在这些机器上,尽管使用了 TCP 通道,但一些 .NET 内部结构似乎出了问题,我得到了一个与管道相关的错误:

“从管道读取错误:无法识别的错误 109 (0x6d)。

System.ServiceModel.Channels.PipeConnection.OnAsyncReadComplete(Boolean haveResult, Int32 error, Int32 numBytes)。”

我曾尝试以域管理员身份运行该服务,以防权限是问题的一部分,但没有任何成功。

我在另一台 Win7(非域机器)、XP 和服务器操作系统上安装了相同的代码,没有问题。

4

2 回答 2

4

也许它与传输模式有关。

尝试将传输模式从缓冲更改为流式 -

http://msdn.microsoft.com/en-us/library/ms731913.aspx

于 2012-09-12T07:50:26.320 回答
0

由于数据无效,可能会出现此问题。

我通过进入我的代码直到找到异常(通过创建 DTO 对象)来修复它。在我从数据库中删除条目后,该错误得到了修复。

于 2019-01-04T10:51:14.410 回答