草庐IT

wcf-endpoint

全部标签

.net - 是否保证多个发送线程的 WCF TCP 消息顺序正确?

有一个使用TCP的WCF连接。服务器上的两个线程连续写入此连接。是否始终保证客户端首先处理第一条消息?按照我的理解应该是有保障的。 最佳答案 “channel”是连续的,所以我认为这里的答案是肯定的。但是对于2个(独立的)线程,“第一个”的含义没有明确定义。 关于.net-是否保证多个发送线程的WCFTCP消息顺序正确?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/265849

wcf - IIS 是否适用于仅限 http 的 WCF 服务?

我不是WCF专家,所以请不要笑话我。我需要编写一个通过TCP端点而不是HTTP接收数据的WCF服务。我仍然可以将它部署到IIS或Azure并利用所有内置的很酷的东西(负载分布等)吗? 最佳答案 取决于IIS的版本。IISv6仅支持HTTP使用IISv7,您还可以获得WAS(Windows进程激活服务),当托管在IIS中时,它还支持TCP和其他协议(protocol)参见:Howto:HostaWCFServicesinIISSettingupanetTcpBindingenabledserviceinIIS7

wcf - 保持 WCF 连接打开,或在每次调用时打开

在客户端PC上进行客户端/服务器通信的最佳做法是什么。我的应用程序将某些内容“记录”到wcf服务器。我的服务器可以在LAN上本地运行,也可以在Internet上的某个地方运行(服务器端的端口转发等)。开销并不是我真正关心的,因为我记录的数据量很少,但我会经常记录它......假设每10秒左右。我是一次实例化我的WCF对象(在应用程序启动时从客户端连接到服务器),还是每10秒实例化一个新的wcf连接(wcf派生调用)。什么是好的做法。我关心对客户资源应用适当的礼仪。有什么好的阅读Material可以指给我看吗? 最佳答案 所有WCF大

c# - 使用多个代理客户端时如何修复 WCF 中的 basicHttpBinding?

[问题有点长,请耐心等待。它有示例源来解释问题。]考虑以下本质上是WCF主机的代码:[ServiceContract(Namespace="http://www.mightycalc.com")]interfaceICalculator{[OperationContract]intAdd(intaNum1,intaNum2);}[ServiceBehavior(InstanceContextMode=InstanceContextMode.PerCall)]classCalculator:ICalculator{publicintAdd(intaNum1,intaNum2){Threa

c# - wcf "An existing connection was forcibly closed by the remote host"关闭客户端后

我在关闭客户端程序后收到错误消息“远程主机强行关闭了现有连接”。我添加了这段代码以确保在程序关闭时关闭客户端连接。我还有一个关闭客户端的按钮,该按钮可以正常工作。privatevoidForm1_FormClosing(objectsender,FormClosingEventArgse){try{client.Close();}catch(CommunicationExceptionex){client.Abort();}catch(TimeoutExceptionex){client.Abort();}catch(Exceptionex){client.Abort();throwe

c# - 检查 WCF 服务是否正在运行的最快方法

我有一个本地运行的WCF服务。该服务有一个运行它的默认端口,但如果该端口已被使用,我会动态分配该端口。我在主机中添加了它以使其可被发现:serviceHost.Description.Behaviors.Add(newServiceDiscoveryBehavior());serviceHost.AddServiceEndpoint(newUdpDiscoveryEndpoint());现在我的客户端需要连接到这个主机。在客户端中,我想让它首先尝试默认端口,如果它无法连接到默认端口上的服务,那么它将进行发现。我发现发现大约需要20-30秒,所以我宁愿避免总是这样做,只有当它在默认端口上

.net - WCF 双工服务和 TCP 端口耗尽

我正在努力解决这个问题。我正在制作一个特定于业务的消息传递应用程序,它将通过WCF(没有vpns,遍布整个网络)将5000到10,000台机器连接回我们的数据中心。它主要用于警报,我需要能够直接向特定客户端发送消息,WCF允许我使用Duplex契约(Contract)完成所有这些操作,但是对于这么多客户端,它让我开始考虑最大化TCP端口空间65535个端口。我假设所有入站连接都将通过我选择的任何端口进入,但返回客户端的出站连接将分别占用一个端口。我很好奇WCF端口共享服务是否做了任何事情来解决这个问题,或者它是否只有65535个端口到一个IP地址?就此而言,MSNMessenger等如

c# - 无法使用 NET.TCP 绑定(bind)访问 WCF 服务

我已经在这里问过类似的问题:Unabletoaddserviceclientforanet.tcpWCFservice.那个时候问题就解决了。但是现在出现了同样的错误。我的WCF服务配置与上一个问题相同。我再次在这里发布:错误是:TheURIprefixisnotrecognized.Metadatacontainsareferencethatcannotberesolved:'net.tcp://localhost/Service1.svc'.Couldnotconnecttonet.tcp://localhost/Service1.svc.Theconnectionattemptl

wcf - 何时使用双工服务?

嗯,我知道在双工契约(Contract)中,服务可以向客户端发送消息,但我想知道什么时候真正有用。我有一个常见的应用程序,它向服务发送请求以从数据库中获取数据、插入数据...等等。此外,我需要在数据库中存储大约40MB的文件,因此我需要良好的性能。为此,我想使用流式传输模式的net.tcp绑定(bind),但问题是net.tcp双工服务不能使用流式传输模式。所以我想我有一些选择。1.-研究我是否真的需要这种应用程序的双工契约(Contract)。例如,也许在聊天应用程序中,双工契约(Contract)更有意义,因为服务器可能需要在联系人连接时通知客户端......等等。但在访问数据库的

wcf - restart/iisreset 禁用 NET.TCP 协议(protocol)?

我在WindowsServer08sp2上的IIS7中托管WCF服务。该服务托管为自己的网站,并通过NET.TCP端点公开。在发出重新启动/iisreset命令之前,该服务工作正常。重启或iisreset后,当我进行任何服务调用时,我收到以下错误:'System.ServiceModel.EndpointNotFoundException:无法发送消息,因为端点地址'net.tcp://[website]/[service_name].svc'的服务对于该地址的协议(protocol)不可用..'服务器的事件日志显示以下错误:'尝试读取和实例化配置的ProcessHandlerType