/// <summary> /// Initializes a new instance of the <see cref="WindowsTimeService"/> class. /// </summary> /// <param name="timeServiceHost">The time service host.</param> /// <param name="timeWebServiceHost">The time web service host.</param> public WindowsTimeService(NinjectServiceHost <TimeService> timeServiceHost, NinjectWebServiceHost <TimeWebService> timeWebServiceHost) { this.InitializeComponent(); this.timeServiceHost = timeServiceHost; this.timeWebServiceHost = timeWebServiceHost; }
public NinjectServiceHelper(IServiceBehavior serviceBehavior, string address, Binding binding) { // Create Ninject service host if (binding.GetType() == typeof(WebHttpBinding)) { _serviceHost = new NinjectWebServiceHost(serviceBehavior, typeof(TServiceType)); } else { _serviceHost = new NinjectServiceHost(serviceBehavior, typeof(TServiceType)); } // Add endpoint _serviceHost.AddServiceEndpoint(typeof(TServiceContract), binding, address); // Add web behavior if (binding.GetType() == typeof(WebHttpBinding)) { var webBehavior = new WebHttpBehavior { AutomaticFormatSelectionEnabled = true, HelpEnabled = true, FaultExceptionEnabled = true }; _serviceHost.Description.Endpoints[0].Behaviors.Add(webBehavior); } // Add service metadata var metadataBehavior = new ServiceMetadataBehavior(); if (binding.GetType() == typeof(BasicHttpBinding)) { metadataBehavior.HttpGetEnabled = true; metadataBehavior.HttpGetUrl = new Uri(address); } _serviceHost.Description.Behaviors.Add(metadataBehavior); // Open service host _serviceHost.Open(); // Init client var factory = new ChannelFactory <TServiceContract>(binding); _client = factory.CreateChannel(new EndpointAddress(address)); }
public MusicWindowsService(NinjectServiceHost <MusicService> serviceHost) { InitializeComponent(); this.serviceHost = serviceHost; }