public static ServiceHost CreateServiceHost(ISimplexConfigUpdaterContract instance, Uri baseAddress) { ServiceHost service = new ServiceHost(instance, baseAddress); var contract = ContractDescription.GetContract(typeof(ISimplexConfigUpdaterContract)); var webBinding = new WebHttpBinding(); var webEndPoint = new ServiceEndpoint(contract, webBinding, new EndpointAddress(baseAddress)); WebHttpBehavior webBehaviour = new WebHttpBehavior(); webBehaviour.HelpEnabled = true; webEndPoint.EndpointBehaviors.Add(webBehaviour); service.AddServiceEndpoint(webEndPoint); // service.Description.Behaviors.Add(new ServiceMetadataBehavior()); //var metaBinding = new BasicHttpBinding(BasicHttpSecurityMode.TransportCredentialOnly); //metaBinding.Security.Transport.ClientCredentialType = HttpClientCredentialType.InheritedFromHost; //service.AddServiceEndpoint(typeof(IMetadataExchange), MetadataExchangeBindings.CreateMexHttpBinding(), "mex"); return service; }
public static ServiceHost CreateServiceHost(ISimplexConfigUpdaterContract instance, Uri baseAddress) { ServiceHost service = new ServiceHost(instance, baseAddress); var contract = ContractDescription.GetContract(typeof(ISimplexConfigUpdaterContract)); var webBinding = new WebHttpBinding(); var webEndPoint = new ServiceEndpoint(contract, webBinding, new EndpointAddress(baseAddress)); WebHttpBehavior webBehaviour = new WebHttpBehavior(); webBehaviour.HelpEnabled = true; webEndPoint.EndpointBehaviors.Add(webBehaviour); service.AddServiceEndpoint(webEndPoint); // service.Description.Behaviors.Add(new ServiceMetadataBehavior()); //var metaBinding = new BasicHttpBinding(BasicHttpSecurityMode.TransportCredentialOnly); //metaBinding.Security.Transport.ClientCredentialType = HttpClientCredentialType.InheritedFromHost; //service.AddServiceEndpoint(typeof(IMetadataExchange), MetadataExchangeBindings.CreateMexHttpBinding(), "mex"); return(service); }