Exemplo n.º 1
0
        public void CreateDefaultBindingTest()
        {
            string expectedAddress      = "net.tcp://*****:*****@"
<configuration> 
    <system.serviceModel>
        <services>
            <service name=""{expectedServiceName}"">
                  <endpoint address=""{expectedAddress}""
                          name=""{expectedEndpointName}""
                          binding=""netTcpBinding""                       
                          contract=""{typeof(ISomeService).FullName}"" />
            </service>
        </services>
   </system.serviceModel>
</configuration>";

            using (var fs = TemporaryFileStream.Create(xml))
            {
                using (ServiceProvider provider = CreateProvider(fs.Name))
                {
                    IConfigurationHolder settingHolder = GetConfigurationHolder(provider);
                    IXmlConfigEndpoint   endpoint      = GetXmlConfigEndpointByEndpointName(settingHolder, expectedEndpointName);
                    Assert.Equal(expectedServiceName, endpoint.Service.FullName);
                    Assert.IsType <NetTcpBinding>(endpoint.Binding);
                    Assert.Equal("NetTcpBinding", endpoint.Binding.Name);
                }
            }
        }
Exemplo n.º 2
0
        public void MultipleServiceTestWithSecurityMode()
        {
            string expectedServiceName              = typeof(SomeService).FullName;
            string expectedContractName             = typeof(ISomeService).FullName;
            string expectedNetTCPAddress            = "net.tcp://*****:*****@"
<configuration> 
    <system.serviceModel>
        <bindings>         
            <netTcpBinding>
                <binding name=""testBinding"">
                 <security mode=""None"" />
                 </binding>
            </netTcpBinding>
         <basicHttpBinding>
        <binding name=""Basic"">
          <security mode=""TransportWithMessageCredential"">
             <message clientCredentialType=""Certificate""/>
            </security >
          </binding >
        </basicHttpBinding >
          </bindings> 
        <services>            
            <service name=""{expectedServiceName}"">
                <endpoint address=""{expectedNetTCPAddress}""
                          binding=""netTcpBinding""
                          bindingConfiguration=""testBinding""
                          contract=""{expectedContractName}"" />
                <endpoint address=""{expectedBasicHttpAddress}""
                          name=""{expectedEndpointNameForBasicHttp}""
                          binding=""netTcpBinding""
                          bindingConfiguration=""testBinding""
                          contract=""{expectedContractName}"" />
            </service>
        </services>                             
    </system.serviceModel>
</configuration>";

            using (var fs = TemporaryFileStream.Create(xml))
            {
                using (ServiceProvider provider = CreateProvider(fs.Name))
                {
                    IConfigurationHolder settingHolder = GetConfigurationHolder(provider);
                    IXmlConfigEndpoint   endpoint      = GetXmlConfigEndpointByEndpointName(settingHolder, expectedEndpointNameForBasicHttp);
                    Assert.Equal(expectedServiceName, endpoint.Service.FullName);
                    Assert.Equal(expectedContractName, endpoint.Contract.FullName);
                    Assert.Equal(expectedBasicHttpAddress, endpoint.Address.AbsoluteUri);

                    endpoint = GetXmlConfigEndpointByEndpointName(settingHolder, string.Empty);
                    Assert.Equal(expectedServiceName, endpoint.Service.FullName);
                    Assert.Equal(expectedContractName, endpoint.Contract.FullName);
                    Assert.Equal(expectedNetTCPAddress, endpoint.Address.AbsoluteUri);
                }
            }
        }
Exemplo n.º 3
0
        public void Configure(ServiceModelOptions options)
        {
            var configHolder = ParseConfig();

            foreach (var serviceEndPoint in configHolder.Endpoints)
            {
                IXmlConfigEndpoint configEndpoint = configHolder.GetXmlConfigEndpoint(serviceEndPoint);
                options.ConfigureService(configEndpoint.Service, serviceConfig =>
                {
                    serviceConfig.AddServiceEndpoint(configEndpoint.Contract, configEndpoint.Binding, configEndpoint.Address, null);
                });
            }
        }