草庐IT

wcf-authentication

全部标签

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 上传大文件

SO上还有许多其他类似的问题。不幸的是,许多人似乎在某些方面互相欺骗。我希望这篇文章能帮助其他人并解决其他问题。我的项目要求是通过IIS将250MB文件上传到IIS中托管的后端WCF服务。我为IIS中托管的后端WCF服务创建了一些单元测试。它们是:1)Upload1MBFile2)Upload5MBFile3)Upload10MBfile4)Upload20MBFile5)Upload200MBFile马上,很明显我们需要使用某种流式传输或分block文件传输。Iusedthissample.该示例描述了一种使用.NETStream对象的方法。使用流对象的一个​​副作用是您必须使用消息

c# - 难以使用 WCF 上传大文件

SO上还有许多其他类似的问题。不幸的是,许多人似乎在某些方面互相欺骗。我希望这篇文章能帮助其他人并解决其他问题。我的项目要求是通过IIS将250MB文件上传到IIS中托管的后端WCF服务。我为IIS中托管的后端WCF服务创建了一些单元测试。它们是:1)Upload1MBFile2)Upload5MBFile3)Upload10MBfile4)Upload20MBFile5)Upload200MBFile马上,很明显我们需要使用某种流式传输或分block文件传输。Iusedthissample.该示例描述了一种使用.NETStream对象的方法。使用流对象的一个​​副作用是您必须使用消息

c# - 如何在 WCF 4.5 中使用 gzip 压缩

WCF4.5支持GZIP,无需第三方库或手写扩展。我通过TCP绑定(bind)让它工作,但找不到通过HTTP绑定(bind)让它工作的方法。我的wcf-服务在Windows服务中自行托管。插件:我不允许使用IIS;我无法切换到任何WCF替代品。这适用于gzip:binding="customBinding"bindingConfiguration="tcpCompressionBinding"name="tcp"这是我目前用于http:binding="basicHttpBinding"bindingConfiguration="httpBinding"name="http"文档并没有

c# - 如何在 WCF 4.5 中使用 gzip 压缩

WCF4.5支持GZIP,无需第三方库或手写扩展。我通过TCP绑定(bind)让它工作,但找不到通过HTTP绑定(bind)让它工作的方法。我的wcf-服务在Windows服务中自行托管。插件:我不允许使用IIS;我无法切换到任何WCF替代品。这适用于gzip:binding="customBinding"bindingConfiguration="tcpCompressionBinding"name="tcp"这是我目前用于http:binding="basicHttpBinding"bindingConfiguration="httpBinding"name="http"文档并没有

c# - WCF REST 服务中的 CORS 支持

我在Windows服务中托管了一个WCFREST服务,我想在每个响应中发送Access-Control-Allow-OriginHTTPheader(定义为CORS的一部分)。我尝试的解决方案是在IDispatchMessageInspector中包含类似以下内容的内容实现:publicvoidBeforeSendReply(refMessagereply,objectcorrelationState){varhttpResponse=reply.Properties["httpResponse"]asHttpResponseMessageProperty;if(httpRespons

c# - WCF REST 服务中的 CORS 支持

我在Windows服务中托管了一个WCFREST服务,我想在每个响应中发送Access-Control-Allow-OriginHTTPheader(定义为CORS的一部分)。我尝试的解决方案是在IDispatchMessageInspector中包含类似以下内容的内容实现:publicvoidBeforeSendReply(refMessagereply,objectcorrelationState){varhttpResponse=reply.Properties["httpResponse"]asHttpResponseMessageProperty;if(httpRespons

c# - 在 WCF 服务中传递接口(interface)?

我正在试验WCF服务,遇到了传递接口(interface)的问题。这个有效:[ServiceContract]publicinterfaceIHomeService{[OperationContract]stringGetString();}但这不是:[ServiceContract]publicinterfaceIHomeService{[OperationContract]IDeviceGetInterface();}当我尝试编译客户端时,它在GetInterface方法上失败了。我收到一个异常,指出它无法将Object转换为IDevice。在客户端,IHomeService类使用

c# - 在 WCF 服务中传递接口(interface)?

我正在试验WCF服务,遇到了传递接口(interface)的问题。这个有效:[ServiceContract]publicinterfaceIHomeService{[OperationContract]stringGetString();}但这不是:[ServiceContract]publicinterfaceIHomeService{[OperationContract]IDeviceGetInterface();}当我尝试编译客户端时,它在GetInterface方法上失败了。我收到一个异常,指出它无法将Object转换为IDevice。在客户端,IHomeService类使用

c# - 处理进入故障状态的持久性 WCF 客户端

我们有一个从Web应用程序使用的WCF服务。我们使用的客户端是使用VisualStudio的“添加服务引用”选项生成的。由于它是一个网络应用程序,并且由于该应用程序的性质可能会导致相对较短的session,我们选择在用户登录时创建一个客户端实例并在session的整个生命周期内保留它,然后在session结束时处理它。这让我想到了我的问题-我们正在尝试确定处理客户端channel进入故障状态的最佳方式。在搜索了一些之后,我们想出了这个:if(client.State=CommuncationState.Faulted){client=newClient();}try{client.So