我在VB.Net中工作,我试图让一段代码更通用。我如何从代码中调用一个WCF服务,在.net框架中3
实际上,有一个很大的Select Case语句根据参数(字符串)中传递的值构建ProxyServer。
Select Case _strNteraHL7
Case Constantes.NomPRPMIN306010
strUrl = ObtenirUrl("ProviderDetailsQuery", _strVersion, _strEnvir, True, _blnSimulCAIS, _blnSimulPDS, _blnSimulPDSSIIR, _blnSimulPDSInteg)
objWsHL7 = New wsProviderDetailsQuery.ProviderDetailsQueryClient(objBinding, New EndpointAddress(strUrl))
Case Constantes.NomPRPMIN301010
strUrl = ObtenirUrl("AddProvider", _strVersion, _strEnvir, True, _blnSimulCAIS, _blnSimulPDS, _blnSimulPDSSIIR, _blnSimulPDSInteg)
objWsHL7 = New wsAddProvider.AddProviderClient(objBinding, New EndpointAddress(strUrl))
像前面例子中“wsAddProvider”和“wsProviderDetailsQuery”的对象是已通过Visual Studio的GUI添加服务引用...
我想知道的,基本上是,如果我可以打电话从包含服务引用,当我想打电话给在控制容器的控件类似某种池此构造...
例如:
objWsHL7 =新wcfServicesContainer( “serviceNameHere” 的ParamArray())
或类似的东西,这样我就可以删除所有这些大的开关的情况下,也重复同样的事情30倍。
objWsHL7是编译时的对象或类型“对象”。
对不起,如果我没有提到足够的细节,随时让我知道如果你需要更多,我真的不知道我必须提供什么信息。
编辑:我发现了另一块的位置代码,使用类似的电话,也许它会帮助理解...
同样,在另一个开关case语句,
objMsgHL7Out = _objWsHL7.ProviderDetailsQuery(_objMsgIn)
objMsgHL7Out是一个System.ServiceModel.Channels.Message _objMsgIn是System.ServiceModel.Channels.Message _objWsHL7是一个对象
好主意,我想做类似于你推荐什么东西,不过,我使用了我们的配置文件一个SQLite文件。我想有一种方法可以将常量字符串与服务相关联(很可能,我想将字符串与标识服务的字符串相关联。) – Pacane 2010-11-16 13:40:49
我想我已经想到了一种我可以做的方式我想要什么,在开始时想要什么,以及你的建议,谢谢。 – Pacane 2010-11-16 17:32:46