分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 前端开发

使用NetTcpBinding,WCF服务未能被激活

发布时间:2023-09-06 01:22责任编辑:董明明关键词:暂无标签

我的WCF采用的是NetTcpBinding,使用时就会报错,换成BasicHttpBinding,就一切正常

The requested service, ‘net.tcp://wcf.xxxxx.com:21336/GameService.svc‘ could not be activated. See the server‘s diagnostic trace logs for more information.

这时我用浏览器访问一下SVC,客户端再请求它又好了,但是隔几分钟不访问,错误又出现

=====================================================================

这个问题困扰我好多天,网上也是找遍了没有解决办法(现在想其实思考方向错了,以为配置有问题,其实是一个WCF服务依赖注入初始化的问题)

关键时刻还是得靠 StackOverflow,随便一搜就找到解决办法了

Autofac WcfIntegration - WCF client service can not be activated when communicating over net.tcp

原来,我用到了Autofac.Integration.Wcf 来做WCF服务的依赖注入

<%@ ServiceHost Language="C#" Debug="true" ????Service="Wettery.WcfContract.Services.IGameService, Wettery.WcfContract.Services" ???Factory="Autofac.Integration.Wcf.AutofacServiceHostFactory, Autofac.Integration.Wcf" %>

依赖关系的建立等初始化操作是在 Global.asax 的 Application_Start

但是 Global 仅适用 Http 绑定,TCP 绑定可采用另一种方法:

在 App_Code 下随便建一个类,添加一个静态方法 public static void AppInitialize() ,服务启动时,这个方法将被自动执行

注意:包含AppInitialize 静态方法的类只能放在App_Code下,并且是此方法必须唯一

更详细参考:

When AppInitialize method get invoked in ASP.NET?

使用NetTcpBinding,WCF服务未能被激活

原文地址:http://www.cnblogs.com/felixnet/p/7782882.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved