jjzjj

ChannelFactory

全部标签

c# - WCF 调用在 Fiddler On 时工作,否则在调试时给出 400 Bad Request

未解决-仍在寻找解决方案。我正在进行WCF调用并传递SAMLtoken:UsingSAMLtokenwithWebService(wsdl)privatestaticstringserviceEndpoint="httpsserviceendpoint";publicstaticvoidCallProviderService(SecurityTokentoken){varbinding=newWS2007FederationHttpBinding(WSFederationHttpSecurityMode.TransportWithMessageCredential);binding.S

c# - WCF ChannelFactory 状态属性

ChannelFactory拥有State属性意味着什么?我知道创建的channel可以具有基于连接的状态。但是我很困惑为什么ChannelFactory也有这样的连接状态。它也连接到WCF服务吗? 最佳答案 一个ChannelFactory对象有一个State因为它是一个CommunicationObject,并且WCF中的所有CommunicationObjects都有一个状态。当然,这只是在回避问题,并没有真正的帮助。真正的问题归结为两部分为什么ChannelFactory派生自CommunicationObjectState

c# - Lazy<T> ExecutionAndPublication - 可能导致死锁的示例

LazyThreadSafetyMode的文档声明如果初始化方法(或默认构造函数,如果没有初始化方法)在内部使用锁,则使用值ExecutionAndPublication可能会导致死锁。我试图更好地理解使用此值时可能导致死锁的示例。在我使用这个值时,我正在初始化一个ChannelFactory.我看不到ChannelFactory的构造函数使用任何内部锁(使用Reflector查看类),所以我相信这种情况不符合可能的死锁情况,但我很好奇什么情况会导致死锁以及是否可能死锁初始化ChannelFactory。总而言之,我的问题是:使用ExecutionAndPublication初始化Ch

WCF TCP 客户端——关于如何使用它们的基本指南?

我有一个WCF服务,想使用TCP绑定(bind)连接到它。这一切都很好,但是你应该如何处理客户呢?我注意到,如果您为每次调用创建一个新客户端,它不会重新使用该channel并留下一堆TCP连接,直到它们超时。创建一个客户端,在上面调用一个方法,然后关闭它是否正常使用?如果你想重新使用连接怎么办?有什么限制?你能从不同的线程同时调用吗?如果不能,是否必须自己做连接池?并且在重新使用连接时,是否必须在调用之前检查连接状态并在出现故障时清理它? 最佳答案 嗯,这是很多问题,情况确实有点复杂。当你创建一个客户端时,你可以通过服务引用来完成它

c# - 如何在 System.ServiceModel.ChannelFactory 中优化 WCF CreateFactory?

我当前的实现是利用ClientBase类为对第三方API进行的WCF调用创建channel。此第三方API需要X509Certificate2证书以及要进行身份验证的ClientCredentials。publicclassHeaderAdder:ContextBoundObject,IClientMessageInspector{publicboolRequestFailedDueToAuthentication;publicstringUserName{get;set;}publicstringPassword{get;set;}publicobjectBeforeSendRequ

c# - 如何在 System.ServiceModel.ChannelFactory 中优化 WCF CreateFactory?

我当前的实现是利用ClientBase类为对第三方API进行的WCF调用创建channel。此第三方API需要X509Certificate2证书以及要进行身份验证的ClientCredentials。publicclassHeaderAdder:ContextBoundObject,IClientMessageInspector{publicboolRequestFailedDueToAuthentication;publicstringUserName{get;set;}publicstringPassword{get;set;}publicobjectBeforeSendRequ

c# - WCF channel 和 ChannelFactory 缓存

所以我决定稍微提高我的WCF应用程序的性能,并尝试缓存Channels和ChannelFactory。在开始之前,我需要解决所有这些问题中的两个问题。1)ChannelFactory是否应该作为单例实现?2)我不太确定如何缓存/重用单个channel。您是否有可以分享的有关如何执行此操作的示例?可能很重要的一点是,我的WCF服务被部署为一个独立的应用程序,只有一个端点。编辑:感谢您的回复。不过我还有几个问题...1)我想我对应该在何处进行缓存感到困惑。我正在向我们公司的另一个部门提供使用此代码的客户端API。此缓存是否发生在客户端?2)客户端API将用作Silverlight应用程序的

c# - 创建 WCF ChannelFactory<T>

我正在尝试将现有的.NETRemoting应用程序转换为WCF。服务器和客户端共享公共(public)接口(interface),所有对象都是服务器激活的对象。在WCF世界中,这类似于创建每次调用服务并使用ChannelFactory创建代理。我正在为如何正确创建ChannelFactory而苦苦挣扎。对于ASP.NET客户端。出于性能原因,我想缓存ChannelFactory对象并在每次调用该服务时创建channel。在.NET远程处理时代,曾经有RemotingConfiguration.GetRegisteredWellknownClientTypes()方法来获取我可以缓存的客