Esempio n. 1
0
        protected override void ExecuteAction(Context context, Step step)
        {
            string first = step.GetParameterValue<string>("String", 1);
            string second = step.GetParameterValue<string>("String", 2);

            ServiceAgent.Currency from = (ServiceAgent.Currency)Enum.Parse(typeof(ServiceAgent.Currency), first, true);
            ServiceAgent.Currency to = (ServiceAgent.Currency)Enum.Parse(typeof(ServiceAgent.Currency), second, true);

            ConfigurationChannelFactory<ServiceAgent.CurrencyConvertorSoap> channelFactory = null;
            double rate;
            try
            {
                channelFactory = new ConfigurationChannelFactory<ServiceAgent.CurrencyConvertorSoap>("CurrencyConvertorSoap", conf.Configuration, null);
                var client = channelFactory.CreateChannel();
                rate = client.ConversionRate(from, to);
            }
            catch (Exception)
            {
                rate = double.NaN;
            }
            finally
            {
                if (channelFactory != null)
                    channelFactory.Close();
            }

            context.AddPublishedItem("Number", step.Id, rate);
        }
Esempio n. 2
0
        public static T CreateServiceClient <T>(string configName)
        {
            string _assemblyLocation = Assembly.GetExecutingAssembly().Location;
            var    PluginConfig      = ConfigurationManager.OpenExeConfiguration(_assemblyLocation);
            ConfigurationChannelFactory <T> channelFactory = new ConfigurationChannelFactory <T>(configName, PluginConfig, null);
            var client = channelFactory.CreateChannel();

            return(client);
        }
Esempio n. 3
0
        public static void Main()
        {
            ExeConfigurationFileMap fileMap = new ExeConfigurationFileMap();

            fileMap.ExeConfigFilename = "Test.config";
            Configuration newConfiguration = ConfigurationManager.OpenMappedExeConfiguration(fileMap, ConfigurationUserLevel.None);

            ConfigurationChannelFactory <ICalculatorChannel> factory1 = new ConfigurationChannelFactory <ICalculatorChannel>("endpoint1", newConfiguration, new EndpointAddress("http://localhost:8000/servicemodelsamples/service"));
            ICalculatorChannel client1 = factory1.CreateChannel();

            ConfigurationChannelFactory <ICalculatorChannel> factory2 = new ConfigurationChannelFactory <ICalculatorChannel>("endpoint2", newConfiguration, new EndpointAddress("net.tcp://localhost:8080/servicemodelsamples/service"));
            ICalculatorChannel client2 = factory2.CreateChannel();

            // Call the Add service operation.
            double value1 = 100.00D;
            double value2 = 15.99D;
            double result = client1.Add(value1, value2);

            Console.WriteLine("(HTTP)Add({0},{1}) = {2}", value1, value2, result);
            result = client2.Add(value1, value2);
            Console.WriteLine("(TCP) Add({0},{1}) = {2}", value1, value2, result);

            // Call the Subtract service operation.
            value1 = 145.00D;
            value2 = 76.54D;
            result = client1.Subtract(value1, value2);
            Console.WriteLine("(HTTP)Subtract({0},{1}) = {2}", value1, value2, result);
            result = client2.Subtract(value1, value2);
            Console.WriteLine("(TCP) Subtract({0},{1}) = {2}", value1, value2, result);

            // Call the Multiply service operation.
            value1 = 9.00D;
            value2 = 81.25D;
            result = client1.Multiply(value1, value2);
            Console.WriteLine("(HTTP)Multiply({0},{1}) = {2}", value1, value2, result);
            result = client2.Multiply(value1, value2);
            Console.WriteLine("(TCP) Multiply({0},{1}) = {2}", value1, value2, result);

            // Call the Divide service operation.
            value1 = 22.00D;
            value2 = 7.00D;
            result = client1.Divide(value1, value2);
            Console.WriteLine("(HTTP)Divide({0},{1}) = {2}", value1, value2, result);
            result = client2.Divide(value1, value2);
            Console.WriteLine("(TCP) Divide({0},{1}) = {2}", value1, value2, result);

            // Closing the connection gracefully and cleaning up resources
            client1.Close();
            client2.Close();

            Console.WriteLine("Press <ENTER> to exit.");
            Console.ReadLine();
        }
Esempio n. 4
0
        public AdService(ILogger logger)
        {
            ErrorHandlingHelper.IfArgumentNullException(logger, "ILogger");
            _logger = logger;
            ExeConfigurationFileMap fileMap = new ExeConfigurationFileMap();

            fileMap.ExeConfigFilename = Path.Combine(AppDomain.CurrentDomain.SetupInformation.PrivateBinPath, "App.config");
            Configuration newConfiguration = ConfigurationManager.OpenMappedExeConfiguration(fileMap, ConfigurationUserLevel.None);
            ConfigurationChannelFactory <IService> factory = new ConfigurationChannelFactory <IService>("BasicHttpBinding_IService", newConfiguration, null);

            _client = factory.CreateChannel();
        }
Esempio n. 5
0
        public static void Main()
        {
            ExeConfigurationFileMap fileMap = new ExeConfigurationFileMap();
            fileMap.ExeConfigFilename = "Test.config";
            Configuration newConfiguration = ConfigurationManager.OpenMappedExeConfiguration(fileMap, ConfigurationUserLevel.None);

            ConfigurationChannelFactory<ICalculatorChannel> factory1 = new ConfigurationChannelFactory<ICalculatorChannel>("endpoint1", newConfiguration, new EndpointAddress("http://localhost:8000/servicemodelsamples/service"));
            ICalculatorChannel client1 = factory1.CreateChannel();

            ConfigurationChannelFactory<ICalculatorChannel> factory2 = new ConfigurationChannelFactory<ICalculatorChannel>("endpoint2", newConfiguration, new EndpointAddress("net.tcp://localhost:8080/servicemodelsamples/service"));
            ICalculatorChannel client2 = factory2.CreateChannel();

            // Call the Add service operation.
            double value1 = 100.00D;
            double value2 = 15.99D;
            double result = client1.Add(value1, value2);
            Console.WriteLine("(HTTP)Add({0},{1}) = {2}", value1, value2, result);
            result = client2.Add(value1, value2);
            Console.WriteLine("(TCP) Add({0},{1}) = {2}", value1, value2, result);

            // Call the Subtract service operation.
            value1 = 145.00D;
            value2 = 76.54D;
            result = client1.Subtract(value1, value2);
            Console.WriteLine("(HTTP)Subtract({0},{1}) = {2}", value1, value2, result);
            result = client2.Subtract(value1, value2);
            Console.WriteLine("(TCP) Subtract({0},{1}) = {2}", value1, value2, result);

            // Call the Multiply service operation.
            value1 = 9.00D;
            value2 = 81.25D;
            result = client1.Multiply(value1, value2);
            Console.WriteLine("(HTTP)Multiply({0},{1}) = {2}", value1, value2, result);
            result = client2.Multiply(value1, value2);
            Console.WriteLine("(TCP) Multiply({0},{1}) = {2}", value1, value2, result);

            // Call the Divide service operation.
            value1 = 22.00D;
            value2 = 7.00D;
            result = client1.Divide(value1, value2);
            Console.WriteLine("(HTTP)Divide({0},{1}) = {2}", value1, value2, result);
            result = client2.Divide(value1, value2);
            Console.WriteLine("(TCP) Divide({0},{1}) = {2}", value1, value2, result);

            // Closing the connection gracefully and cleaning up resources
            client1.Close();
            client2.Close();

            Console.WriteLine("Press <ENTER> to exit.");
            Console.ReadLine();
        }
Esempio n. 6
0
        private ServiceReferenceWCF.INewWebService CreateChannel()
        {
            string absolutePath = Path.Combine(AppDomain.CurrentDomain.SetupInformation.PrivateBinPath, "SA.OnlineStore.DataAccess.dll.config");

            Configuration configuration = ConfigurationManager.OpenMappedExeConfiguration(
                new ExeConfigurationFileMap {
                ExeConfigFilename = absolutePath
            }, ConfigurationUserLevel.None);

            ConfigurationChannelFactory <ServiceReferenceWCF.INewWebService> channelFactory =
                new ConfigurationChannelFactory <ServiceReferenceWCF.INewWebService>("BasicHttpBinding_INewWebService", configuration, null);

            return(channelFactory.CreateChannel());
        }
Esempio n. 7
0
        private AdvertisingService.IAdvertisingService CreateChannel()
        {
            string absolutePath = Path.Combine(AppDomain.CurrentDomain.SetupInformation.PrivateBinPath, "AL.Events.DAL.dll.config");

            var configuration = ConfigurationManager.OpenMappedExeConfiguration(new ExeConfigurationFileMap {
                ExeConfigFilename = absolutePath
            }, ConfigurationUserLevel.None);

            var channelFactory = new ConfigurationChannelFactory <AdvertisingService.IAdvertisingService>("BasicHttpBinding_IAdvertisingService", configuration, null);

            var channel = channelFactory.CreateChannel();

            return(channel);
        }
Esempio n. 8
0
        public TOut GetData <TOut>(string endpointConfigurationName, Configuration configuration, EndpointAddress remoteAddress, Func <T, TOut> getData)
        {
            TOut data = default(TOut);

            using (var channelFactory = new ConfigurationChannelFactory <T>(endpointConfigurationName, configuration, remoteAddress))
            {
                try
                {
                    var channel = channelFactory.CreateChannel();
                    data = getData(channel);
                    channelFactory.Close();
                }
                catch (ConfigurationErrorsException ex)
                {
                    _logger.WarnFormat($"{ ex.Message }");
                }
                catch (TimeoutException ex)
                {
                    _logger.WarnFormat($"Cannot connect to { nameof(T) }.\n { ex.Message }");
                }
                catch (FaultException <Service::CommercialNotFound> ex)
                {
                    _logger.WarnFormat($"{ ex.Message }");
                }
                catch (FaultException ex)
                {
                    _logger.WarnFormat($"Cannot connect to { nameof(T) }.\n { ex.Message }");
                }
                catch (CommunicationException ex)
                {
                    _logger.WarnFormat($"Cannot connect to { nameof(T) }.\n { ex.Message }");
                }
                catch (Exception ex)
                {
                    _logger.WarnFormat($"Cannot connect to { nameof(T) }.\n { ex.Message }");
                }
            }

            return(data);
        }
        private void RunLoggedInTest(string configFileName)
        {
            IUnityContainer container = new UnityContainer();

            RegisterTypes(container);
            DependencyResolver.SetResolver(new UnityDependencyResolver(container));

            using (var serviceHost = new TestingServiceHost(typeof(DoSomethingService), configFileName))
            {
                serviceHost.Open();
                var filemap = new System.Configuration.ExeConfigurationFileMap();
                filemap.ExeConfigFilename = configFileName;

                System.Configuration.Configuration config =
                    System.Configuration.ConfigurationManager.OpenMappedExeConfiguration
                    (filemap,
                     System.Configuration.ConfigurationUserLevel.None);

                using (ConfigurationChannelFactory<IDoSomethingService> channelFactory =
                    new ConfigurationChannelFactory<IDoSomethingService>("ClientEP", config, null))
                {
                    IDoSomethingService channel = channelFactory.CreateChannel();
                    DoSomething(channel);
                }
            }
        }