WCF Net.TCP 服务抛出模糊错误

2023-12-21

我正在尝试为现有 WCF 服务启用额外的 net.tcp 端点(使用用户名身份验证)。该服务托管在 IIS7 中。

针对服务执行客户端会返回套接字连接已中止的错误。启用对服务的跟踪后会发现抛出以下异常:

System.ArgumentOutOfRangeException
该参数的值必须为正。
参数名称:maxAccepts
实际值为 0。

我很困惑,因为据我所知,端口共享应该通过配置禁用(见下文),但它仍然通过端口共享代码进行调用(再次,据我所知)。无论如何,我找不到任何方法来指定这个 maxAccepts 值;谷歌对此一无所知,并且 maxPendingAccepts 值似乎也没有做到这一点。我该如何解决该错误?

该服务的配置文件包含 net.tcp 端点的以下内容:

<bindings>
  <customBinding>
    <binding name="netTcp">
      <security authenticationMode="UserNameOverTransport" />
      <windowsStreamSecurity />
      <tcpTransport portSharingEnabled="false" listenBacklog="10" maxPendingAccepts="10" maxPendingConnections="10" />
    </binding>
  </customBinding>
</bindings>
<behaviors>
  <serviceBehaviors>
    <behavior name="netTcp">
      <serviceDebug includeExceptionDetailInFaults="false" />
      <serviceMetadata/>
      <serviceCredentials>
        <userNameAuthentication userNamePasswordValidationMode="Custom" customUserNamePasswordValidatorType="Asi.Soa.ServiceModelEx.NullUserNamePasswordValidator, Asi.Soa.ServiceModelEx" />
        <clientCertificate>
          <authentication certificateValidationMode="None"/>
        </clientCertificate>
      </serviceCredentials>
      <serviceAuthorization principalPermissionMode="Custom">
        <authorizationPolicies>
          <add policyType="Asi.Soa.ServiceModelEx.ClaimsAuthorizationPolicy, Asi.Soa.ServiceModelEx" />
        </authorizationPolicies>
      </serviceAuthorization>
    </behavior>
  </serviceBehaviors>
</behaviors>

完整的异常堆栈跟踪是:

System.ServiceModel.Channels.ConnectionAcceptor..ctor(IConnectionListener listener, Int32 maxAccepts, Int32 maxPendingConnections, ConnectionAvailableCallback callback, ErrorCallback errorCallback)
System.ServiceModel.Channels.ConnectionDemuxer..ctor(IConnectionListener listener, Int32 maxAccepts, Int32 maxPendingConnections, TimeSpan channelInitializationTimeout, TimeSpan idleTimeout, Int32 maxPooledConnections, TransportSettingsCallback transportSettingsCallback, SingletonPreambleDemuxCallback singletonPreambleCallback, ServerSessionPreambleDemuxCallback serverSessionPreambleCallback, ErrorCallback errorCallback)
System.ServiceModel.Channels.SharedTcpTransportManager.CreateConnectionDemuxer()
System.ServiceModel.Channels.SharedTcpTransportManager.OnDuplicatedVia(Uri via, Int32&amp; connectionBufferSize)
System.ServiceModel.Channels.SharedConnectionListener.SharedListenerProxy.HandleOnVia(DuplicateContext duplicateContext)
System.ServiceModel.Channels.SharedConnectionListener.SharedListenerProxy.System.ServiceModel.Activation.IConnectionDuplicator.BeginDuplicate(DuplicateContext duplicateContext, AsyncCallback callback, Object state)
AsyncInvokeBeginBeginDuplicate(Object , Object[] , AsyncCallback , Object )
System.ServiceModel.Dispatcher.AsyncMethodInvoker.InvokeBegin(Object instance, Object[] inputs, AsyncCallback callback, Object state)
System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc&amp; rpc)
System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc&amp; rpc)
System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage4(MessageRpc&amp; rpc)
System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage3(MessageRpc&amp; rpc)
System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage2(MessageRpc&amp; rpc)
System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage1(MessageRpc&amp; rpc)
System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.Dispatch(MessageRpc&amp; rpc, Boolean isOperationContextSet)
System.ServiceModel.Dispatcher.ChannelHandler.DispatchAndReleasePump(RequestContext request, Boolean cleanThread, OperationContext currentOperationContext)
System.ServiceModel.Dispatcher.ChannelHandler.HandleRequest(RequestContext request, OperationContext currentOperationContext)
System.ServiceModel.Dispatcher.ChannelHandler.AsyncMessagePump(IAsyncResult result)
System.ServiceModel.Dispatcher.ChannelHandler.OnAsyncReceiveComplete(IAsyncResult result)
System.ServiceModel.Diagnostics.Utility.AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)
System.ServiceModel.AsyncResult.Complete(Boolean completedSynchronously)
System.ServiceModel.Channels.FramingDuplexSessionChannel.TryReceiveAsyncResult.OnReceive(IAsyncResult result)
System.ServiceModel.Diagnostics.Utility.AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)
System.ServiceModel.AsyncResult.Complete(Boolean completedSynchronously)
System.ServiceModel.Channels.SynchronizedMessageSource.ReceiveAsyncResult.OnReceiveComplete(Object state)
System.ServiceModel.Channels.SessionConnectionReader.OnAsyncReadComplete(Object state)
System.ServiceModel.Channels.TracingConnection.TracingConnectionState.ExecuteCallback()
System.ServiceModel.Channels.TracingConnection.WaitCallback(Object state)
System.ServiceModel.Channels.PipeConnection.OnAsyncReadComplete(Boolean haveResult, Int32 error, Int32 numBytes)
System.ServiceModel.Channels.OverlappedContext.CompleteCallback(UInt32 error, UInt32 numBytes, NativeOverlapped* nativeOverlapped)
System.ServiceModel.Diagnostics.Utility.IOCompletionThunk.UnhandledExceptionFrame(UInt32 error, UInt32 bytesRead, NativeOverlapped* nativeOverlapped)
System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pOVERLAP)

编辑:我已经安装了非 HTTP WCF 激活组件,运行 ServiceModelReg.exe,将 net.tcp 和 net.pipe 添加到 IIS 管理器中启用的协议列表中,等等。没有乐趣。

我还编写了一个快速的 Windows 服务来托管该服务(对我们来说不是理想的长期解决方案),并且 Net TCP 连接在那里工作正常,因此它在我的配置或代码中似乎没有任何内容,这意味着 IIS 中有问题。应用程序的应用程序池是否必须在集成模式下运行?我尝试了两种方式,似乎没有什么区别,但我们的应用程序当前安装在经典模式下。


据我所知,问题很简单,当一个是 Soap11 端点,一个是 NetTcp 端点时,.NET 不喜欢在同一个 IIS 应用程序中托管两个服务。删除 Soap11 端点可使 NetTcp 端点正常工作而不会出现错误。

我们已转向使用 Windows 服务托管 NetTcp 端点并将 Soap11 端点保留在 IIS 中的模型。

如果有人知道如何在 IIS 的同一应用程序中托管 NetTcp 和 Soap11 服务,我很想听听。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WCF Net.TCP 服务抛出模糊错误 的相关文章

  • 从 WCF 服务返回接口

    我有一些 NET 远程处理代码 其中在某些服务器端类中实现的工厂方法返回具体对象的接口 也在同一台服务器上执行 NET 远程处理会自动创建代理 并允许我将接口传递给客户端 然后客户端可以直接调用它们 接口示例 public interfac
  • WCF 4.0 REST 上传 MS-Excel 文件

    我正在尝试通过 WCF REST 服务上传 MS Excel 文件 我使用了下面帖子中给出的解决方案 RESTful WCF服务图片上传问题 https stackoverflow com questions 664712 restful
  • 远程服务器返回错误:NotFound。银光+WCF

    我正在尝试调用网络服务几个小时 我添加了 clientaccesspolicy xml
  • WCF获取证书编码值

    我在 WCF 服务中使用证书 因此在 web Config 中有一个编码值
  • 如何从Windows服务公开restful接口?

    我编写了一个公开restful接口的wcf服务 现在我使用iis作为wcf服务主机 除了暴露其余部分之外 我还需要对我的应用程序执行一些操作 为此 我必须将我的应用程序作为 Windows 服务运行 但是使用iis作为主机不会使我的wcf服
  • MSMQ、WCF 和 Flaky 服务器

    我有两个应用程序 我们称它们为 A 和 B 当前 A 使用 WCF 向 B 发送消息 A 不需要响应 B 也从不将消息发送回 A 不幸的是 运行的服务器 A 和 B 之间的网络连接不稳定 这导致 A 时不时地出现超时错误 我想使用 WCF
  • 在浏览器中测试wcf服务

    我无法在浏览器中调用基本的 wcf web 方法 即使使用
  • 使用 Web 部署在 IIS Express 上发布 WCF 服务应用程序

    我想在 IIS Express 上发布在 Visual Studio 2010 中创建的 WCF 服务应用程序 所以我使用项目 gt 发布 gt Web 部署 Service URL http localhost Site applicat
  • WCF 服务绑定采用默认值而不是自定义值

    我已经构建了一个 APi 它是一个 WCF 服务 在服务的 web config 中 我指定了一个自定义 bindong 如下所示
  • WCF 中的 Web 服务发现:Ws-Discovery 还是 UDDI?

    我知道 UDDI 和 Ws Discovery 熟知搜索服务与广播的位置 之间的区别 但我的问题是 在 WCF 中发现 Web 服务的最简单方法是什么 最简单的意思是 WCF 中已经实现了哪些内容并且现在可以使用 我还没有在 WCF 中看到
  • RESTful WCF 的最低配置

    为了让 WCF 与 REST 一起工作 我至少需要在 web config 中放入什么 我已经用 WebGet 注释了我的方法 但他们没有收到消息 我发现您可以将以下内容添加到 svc 文件中的 ServiceHost 指令中 它会自动为您
  • WCF vs ASPX webmethods vs ASMX webmethods

    目的是创建一组人们可以重用的 Web 服务 这些服务主要与创建 检索和处理数据的后端数据库交互 我们希望公开服务 以便人们可以用来创建数据混搭和其他应用程序 最终用户是可以位于我们域内或域外的网页 对于域外的页面 我们计划发布配置为检索和显
  • 如何唯一标识会话 0 中运行的 Internet Explorer 窗口?

    我正在创造WCF web services自动化internet explorer 有多个Web服务调用需要访问同一个实例Internet Explorer 然而 自从WCF服务托管于IIS所有对 Web 服务的调用都在会话 0 中执行 现
  • 在 WCF 中序列化 IDictionary

    我们有一个现有的应用程序 其中一个 DTO 对象的属性类型为IDictionary
  • 通过 WCF 提供类对象的数组或列表

    任何提供自定义类对象列表或数组的 WCF 客户端服务器示例都会对我有所帮助 但这是我到目前为止所得到的 这是我想提供的班级系统 namespace NEN Server FS Serializable public class XFS pr
  • 通过 https 负载均衡器的 WCF http 服务

    我有一个可以通过 http 端点访问的 WCF Web 服务 现在 该服务应通过 https 与负载均衡器一起发布 客户端是通过 svcutil exe 在 Net 中创建的 但 Java 客户端也需要 WSDL 我的理解是 Web 服务在
  • 尽管受信任的根 CA,WCF 错误“X.509 证书链构建失败”

    我收到了中提到的错误这个问题 https stackoverflow com questions 4256520 wcf error the x 509 certificate cn localhost chain building fai
  • IIS 7.5 托管的 WCF 服务仅针对大型请求抛出 EndpointNotFoundException 和 404

    我有一个 WCF REST 服务托管在 IIS 7 5 Windows 2008 R2 上 该服务按预期工作 除非客户端尝试发送大于 25 MB 的消息 具体来说 当发送大小约为 25 MB 的消息时 服务会正确接收并处理消息 而当发送大小
  • 尝试对无法访问的主机进行套接字操作

    一位客户在连接到我们的服务器服务的 WCF 客户端上报告了此错误 消息 尝试对无法访问的主机进行套接字操作 类型 System Net Sockets SocketException 从这个链接http msdn microsoft com
  • WCF 中 SOAP 消息的数字签名

    我在 4 0 中有一个 WCF 服务 我需要向 SOAP 响应添加数字签名 我不太确定实际上应该如何完成 我相信响应应该类似于下面的链接中显示的内容 https spaces internet2 edu display ISWG Signe

随机推荐

  • 验证和更改用户密码

    我有一个简单的 C Windows 窗体 它充当登录名 但也有一个用于更改用户密码的窗体 当您单击 更改密码 时 表单会加载一个文本框 其中包含当前密码 新密码和确认新密码以及一个保存按钮 我已将用户名存储在标签中 以便可以检查当前密码是否
  • 我什么时候应该使用 subprocess.Popen 而不是 os.popen?

    似乎都执行一个子进程并创建一个管道来执行输入 输出 只是subprocess较新 我的问题是 有没有什么功能可以subprocess Popen可以做一会儿os popen不能 所以我们需要新模块subprocess 为什么Python语言
  • Google 服务器在隐私浏览模式下的第一个请求出现服务器错误

    每当我运行该网址时https scholar google com citations user N7m4vIQAAAAJ hl en在 Safari 和 Google Chrome 的私有窗口中 Google 会给出错误 它仅在隐私浏览模
  • 如何在没有nodejs和电子的情况下在网页上实现monaco-editor

    我正在尝试制作一个简单的网页编辑器 我发现了这个叫做 Monaco editor 的东西 我看到有人将它与 Electron 一起使用 但我只想在纯 JavaScript 中使用它 就像在他们的网页上一样 link https micros
  • 什么是 props.children? [复制]

    这个问题在这里已经有答案了 我正在遵循本教程 讲师做了类似的事情来解释高阶组件 const aux props gt props children export default aux 进而imported这到其他文件并替换div标记为 例
  • Android:在两个活动之间传递图像及其 URI 时出现问题

    我们可以使用捆绑包将图像和图像 URI 传递给同一应用程序中的其他活动吗 请建议我一些方法来做到这一点 USAGE 实际上 我做了一项活动 根据用户的不同 裁剪从相机拍摄的图像或从存储在 SD 卡中的图像 另一个使用背景图像和边框图像的应用
  • 如何使用动态分配的任意维数组?

    典型的一维数组可以在声明中静态或自动分配 enum n 100 int arr1 n 或者通过指针动态分配和访问 int arr1m malloc n sizeof arr1m int arr1c calloc n sizeof arr1c
  • 使用 ActionScript 3 的触摸事件与鼠标单击事件

    只是想问一下 在为手机或平板电脑 尤其是 iPhone 编写应用程序时 使用鼠标单击事件或触摸点击事件是否有任何优势 我知道他们都应该工作得很好 但是就性能而言 谁更好 选择时有什么需要注意的吗 顺便说一句 我使用 actionscript
  • 如何在 ASP.NET MVC 中更改操作参数并使其在不更改路由的情况下工作?

    在我的路线中 我有这样的事情 controller action id 据我所知 这意味着它将调用带有参数 id 的任何操作 如下所示 public ActionResult Detail string id 我需要做什么才能完成以下工作而
  • 错误 ITMS-9000:“无效架构:包含应用程序扩展和框架的应用程序必须支持 arm64

    我想在 Itunes Connect 上上传带有自定义键盘扩展的版本 但是当我要通过应用程序加载器将其上传到 Itunes Connect 时 它会显示以下错误 ERROR ITMS 9000 Invalid architecture Ap
  • 如何在 SQL 的嵌套子查询中查找不同的列?

    我需要找到订购 伏特加 和 威士忌 的不同饮酒者 我只被允许使用嵌套查询 不接受其他格式 我对 sql 很陌生 所以任何帮助将不胜感激 以下是我尝试从中检索数据的表 CREATE TABLE DRINKERS All drinkers DR
  • restangular:可以有进度条吗?

    我有这个基于 reangular 的代码 在服务中 它有效 sendFile function params console log sendFile console log params return this restfulBase p
  • Coq Proof Assistant 中依赖类型的问题

    考虑以下简单的表达语言 Inductive Exp Set EConst nat gt Exp EVar nat gt Exp EFun nat gt list Exp gt Exp 及其格式良好的谓词 Definition Env lis
  • 设置 gdb 和 eclipse 从 Android 应用程序调试共享库后,无法访问地址 0X1 处的内存

    我有两个 Android 项目 一个是一个库 另一个是使用该库的常规应用程序 我的目标是从 Android 应用程序调试共享库 我遵循了这个指南 http mhandroid wordpress com 2011 01 23 using e
  • smtplib 在 Python 3.1 中使用 unicode 字符发送邮件的问题

    您好 我遇到了 unicode 电子邮件的问题 当我尝试用西班牙语发送 A adir 等单词时 系统崩溃了 我尝试了此链接上的说明 Python 3 smtplib 使用unicode字符发送 https stackoverflow com
  • 无法使用 JAXB 生成类

    我尝试使用 JAXB 生成类 但出现异常 IllegalArgumentException 非法模式字符 g 我使用一个复杂的 XSD 文件和一个绑定文件 如下所示 有人可以提供调查地点的线索吗
  • Python 获取<标题>

    我想获取使用 urllib2 打开的网页的标题 执行此操作的最佳方法是什么 解析 html 并找到我需要的内容 目前只有 标记 但将来可能需要更多 有没有一个好的解析库用于此目的 是的 我会推荐美丽汤 http www crummy com
  • KissFFT(kiss_fftr 到 Kiss_fftri) - 如何重建原始信号?

    我在理解如何正确使用 KissFFT 1 2 9 时遇到一些困难 我现在想要实现的目标是执行 FFT 然后立即执行 iFFT 以再次重建原始信号 下面的代码片段演示了我正在做的事情 void test short timeDomainDat
  • 如何从 bash 脚本中删除注释

    我正在尝试制作一个将脚本文件作为参数的脚本 它应该从文件中删除注释并将其通过管道传输到另一个脚本 如果可能的话 没有临时文件 一开始我想做这个 cut d f1 1 script name 但它也会清除一部分不是注释的行 因为有一些命令在其
  • WCF Net.TCP 服务抛出模糊错误

    我正在尝试为现有 WCF 服务启用额外的 net tcp 端点 使用用户名身份验证 该服务托管在 IIS7 中 针对服务执行客户端会返回套接字连接已中止的错误 启用对服务的跟踪后会发现抛出以下异常 System ArgumentOutOfR