问题标签 [net.tcp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
687 浏览

c# - 在覆盖 AutofacServiceHostFactory 时我们应该使用覆盖还是静态构造函数

我们在 IIS 7.5 中运行带有 net.tcp 绑定的 WCF 服务,因此我们使用非 HTTP 激活和 WAS 托管。我们为每个服务创建了一个自定义服务主机工厂,它派生自 AutofacServiceHostFactory

我最近对服务进行了一些维护(切换到使用 NuGet 包升级到最新版本等)。我碰巧注意到WCF 集成的 wiki 文章建议在调用基本实现之前使用覆盖CreateServiceHost(string constructorString, Uri[] baseAddresses)并在那里构建容器。

我们的 ServiceHostFactories 一直在使用静态构造函数来做同样的事情。我想知道我是否应该切换。静态构造函数是一个坏主意有什么原因吗?如果使用覆盖,我们需要覆盖任何其他重载CreateServiceHost()

谢谢您的帮助!

0 投票
3 回答
5383 浏览

c# - 使用 net.tcp 绑定在 IIS 7 上托管 WCF 服务 - 使用服务时出错

我正在尝试在 IIS 7 / Win 7 中托管具有 Net TCP 绑定的 WCF 服务。该服务是托管的,我可以在我的客户端应用程序中添加对它的引用。

这是服务配置文件:

这是我添加参考时在客户端生成的配置:

问题出在运行时,我收到以下错误:-

无法连接到 net.tcp://localhost:10000/AppServer.ApplicationProcess.svc。连接尝试持续了 00:00:02.0582058 的时间跨度。TCP错误代码10061:由于目标机器主动拒绝,无法建立连接。

我已按照http://www.singingeels.com/Articles/Duplex_WCF_Services_Hosted_in_IIS_Using_NetTcp.aspx中描述的步骤进行操作

并在我的防火墙中创建了一个入站规则,允许在端口 10000 上进行 TCP 通信。我不确定我错过了什么。有什么想法吗?

0 投票
2 回答
8915 浏览

wcf - 通过 IIS 管理器 7.5 使用 net.tcp 绑定托管 WCF 服务

我对托管 Web 应用程序和 Web 服务还很陌生。尽管我成功地托管了一个 Web 应用程序,但在尝试托管具有 net.tcp 绑定的 WCF 服务时,我遇到了一个又一个的障碍。

我的场景如下,我有一个托管的 Web 应用程序,它需要通过 IIS 7.5 与带有 net.tcp 绑定的托管 WCF 服务进行通信。如前所述,Web 应用程序托管良好,我可以浏览该网站。但是,Web 应用程序对 WCF 服务进行服务调用,并且我收到“TCP 错误代码 10061”消息,我认为这是由于我的托管 WCF 服务未运行。我认为这没有运行,因为我尝试“telnet localhost 808”以查看 WCF 服务是否正在运行,但它没有运行。我浏览了许多在线指南,但仍然没有运气。我相信我可能是在做一些根本错误的事情,因为我是一个菜鸟。我能够通过 VS2010 托管服务并运行 Web 应用程序,它工作正常,所以我相信我的绑定是正确的。我'

所以我想我真正的问题是托管具有 net.tcp 绑定的 WCF 服务所需的 IIS 管理器步骤是什么?在我看来,不可能通过简单地创建一个网站来通过 IIS 管理器托管 net.tcp 服务,因为 IIS 管理器想要绑定到一个 http 端口。

0 投票
1 回答
17891 浏览

wcf - net.tcp 服务对该地址的协议不可用

我们的应用程序托管在 IIS 7.0 中。它通过 net.tcp 协议公开端点。但是我们一直遇到以下异常:

EndpointNotFoundException:消息无法发送,因为端点地址“net.tcp://localhost/xxx/service.svc”的服务对于该地址的协议不可用。

我们已经检查了以下地方的可能原因。

  • Windows 进程激活服务运行正常
  • Net.Tcp Listener Adapter 服务正常。
  • Net.Tcp 端口共享服务正常。
  • 我们为 Web 应用程序制作了 net.tcp 绑定。
  • 为 Web 应用程序启用了 net.tcp 协议,如下所示。 net.tcp 协议已启用

检查完上述所有位置后,我尝试重置 IIS。还是行不通。

这是要了我的命。希望有人能给我一些提示。

我已经搜索了很多。似乎这是一个非常普遍的问题,尚未完全解决。我认为是时候结束这种痛苦了。

非常感谢!

0 投票
2 回答
3941 浏览

wcf - 从 Web.config 启用 net.tcp 协议

我有具有 http 和 net.tcp 端点的 WCF 服务。我已将该服务部署到 IIS 7.5 (Server 2008R2),一切正常。

我的问题是,有没有办法通过 Web.config 为 IIS 应用程序设置启用的协议?现在我必须去 IIS 中的应用程序并手动更改高级设置并将net.tcp添加到可用协议列表中,然后才能激活服务,请参见截图中的图片。

IIS 协议设置

0 投票
1 回答
1390 浏览

wcf - 将 net.tcp WCF 服务从 localhost 移动到新站点上的 IP 地址,服务不会加载

我有一个运行 2 个 WCF 服务的网站。工作很棒,直到我需要将它们从 IIS7 中的“默认网站”移动到具有新 IP 地址的专用网站。现在我收到错误消息:

“...无法加载,因为找到了该合约的多个端点配置。请按名称指明首选端点配置部分”

我所做的只是改变:

net.tcp://localhost/...

至:

net.tcp://10.1.2.204/...

我已经将配置中曾经使用 localhost 的每个位置更改为指定的 IP 地址。新网站的设置与正确的 net.tcp 绑定完全相同,并且绑定到单个 IP 地址 10.1.2.204。

我似乎无法弄清楚发生了什么。我正在查看 svc 跟踪日志,我得到的只是一堆相同的。

我的新网站被称为“核心”,而之前我在“默认网站”上托管。我添加了一个新的 FQDN/公共 IP 来路由到这个新站点(反向到提到的私有 IP 地址)。现在我的服务被破坏了。

我知道使用 IIS/WAS 托管时会忽略 baseAddress,所以我不确定还要检查什么。我在配置中完全没有改变任何其他内容。

我还能提供什么来帮助解决此问题?

--

我也在服务跟踪查看器中看到了这一点:

活动名称在连接上接收字节'Listen at 'net.tcp://hole.myserver.com/...'.'。

...但是 WCF 服务实际上托管在那个新的“核心”网站上,该网站转换为我的新私有 IP 地址。我已更改示例的 FQDN 名称。说清楚:

我曾经使用默认网站在此服务器上拥有 1 个 FQDN。

我现在向该服务器、新网站、第二个 IP 添加了第二个 FQDN。在我看来,监听应该指向:net.tcp://core.myserver.com 而不是 net.tcp://hole.myserver.com。假设服务器名称是hole.myserver.com,而我的新网站是core.myserver.com,位于同一台服务器上。

希望这不会令人困惑,您可以理解它。

我正在使用 808 的默认 net.tcp 端口和 808 的绑定:*

--

这是我可以告诉的第一个异常:

套接字连接被中止。这可能是由于处理您的消息时出错或远程主机超出接收超时,或者是潜在的网络资源问题造成的。本地套接字超时为“00:00:10”。

--

这些组合都不会激活服务并且都会产生相同的异常:

net.tcp://localhost net.tcp://localhost:808 net.tcp://10.1.2.204 net.tcp://10.1.2.204:808

即使使用我以前做过的不同端口也没有问题:

net.tcp://localhost:75 net.tcp://10.1.2.204:75

这些都不起作用。:(

非常感谢!

0 投票
1 回答
527 浏览

wcf - 使用“默认网站”、默认端口、net.tcp 以外的网站托管 WCF 服务

我的基本问题是在“默认网站”以外的网站上的默认 net.tcp 端口 808 上的 IIS7(2008 R2)中托管 WCF 服务的指导。我有 4 个站点,每个站点都绑定到一个特定的 IP 地址。我希望我的 WCF 服务托管在使用端口 808 的默认站点之外的站点中。这里有什么问题?我想理解这一点,而不仅仅是使用另一个端口来解决问题,如果是这样的话。

我昨天创建了这个试图解决这个问题的运行问题/日志,但我运气不佳。我不得不将 WCF 服务移回默认网站,并将 net.tcp 绑定从我想要的网站移回默认网站。

将 net.tcp WCF 服务从 localhost 移动到新站点上的 IP 地址,服务不会加载

我使用以下技术访问我的服务:

并在客户的方法内:

我依靠提供 .svc 文件的托管项目的 web.config 中的 WCF 配置来正确地将我连接到 WCF 服务。如果这是次优的,我愿意改变。

web.config 中的典型客户端配置如下所示:

感谢您的任何指示。

0 投票
1 回答
158 浏览

.net - 如何在服务器端捕获客户端的连接和断开连接?

我已经使用 WCF (net.tcp) 编写了一个服务器/客户端。现在我想在服务器端捕获客户端的连接和断开连接。

0 投票
1 回答
87 浏览

wcf - 将字符串中的 X509Certv3 用于 WCF 服务端点?

我已将密钥对(公钥和私钥)从 Win2k8 服务器导出到单个证书中。然后我使用 OpenSSL 将其转换为 pem:

然后,我将 .pem 的内容放入 MSSQL 表 Varchar(max) 列类型中。

仅使用 .NET Framework 4.0。

我得到这样的证书:

我收到错误消息“未处理加密异常,找不到指定的对象。”

我是否错误地转换为 byte[]?这是针对具有 TCP 绑定的自定义 WCF 服务,我试图在不接触内部存储的情况下使用 SSL 证书(因为这将有一天迁移到 Azure 辅助角色,我不能使用证书存储或文件系统)。

感谢所有的想法。

0 投票
3 回答
2357 浏览

wcf - 多个 ServiceHost 实例何时可以共享同一个端口?

我们的应用程序服务器通过 net.tcp 传输公开了 5 个 WCF 服务,所有这些服务都在同一个端口上。在开发过程中,我们一直在使用 WcfSvcHost 托管这些,而我从未考虑过它们如何设法使用相同的端口。

我们现在将它们移动到 Windows 服务,现在我自己实例化 ServiceHost 实例。其中一项服务使用基于 Tcp 的 Streamed TransferMode。

使用带有 WcfSvcHost 的配置文件启动这些服务时,它们可以正常工作。但在我们的服务中,它抱怨端口正在使用中。

流服务是否可以使用相同的端口?