static void Main() { var config = new HttpHostConfiguration() .EnableWebLinking(reg => reg.AddLinkFrom<TheService>().To<AnotherService>("next")); using (var host = new WebHttpServiceHost(typeof(TheService), config, new Uri("Http://localhost:8080/linking/"))) { host.Open(); Console.WriteLine("host is opened at {0}, press any key to continue", host.BaseAddresses[0]); Console.ReadLine(); } }
static void Main() { using (var host = new WebHttpServiceHost(typeof(TheService))) { var ep = host.AddServiceEndpoint(typeof(TheService), new HttpMessageBinding(), "Http://localhost:8080/async/"); ep.Behaviors.Add(new HttpEndpointBehavior(new FirstHostConfiguration())); host.Open(); Console.WriteLine("host is opened at {0}, press any key to continue", ep.Address); Console.ReadLine(); } }
static void Main(string[] args) { var provider = new ProcessorProviderFor<TheService>(); provider.RemoveAllMediaTypeProcessors().ForResponses.OfAllOperations(); provider.Use((o, l, m) => new ImageFromTextMediaProcessor(o, m)) .ForResponses.OfOperation( s => s.GetTimeWithConneg(default(HttpRequestMessage), default(HttpResponseMessage))); provider.Use((o, l, m) => new WaveFromTextMediaProcessor(o, m)) .ForResponses.OfOperation( s => s.GetTimeWithConneg(default(HttpRequestMessage), default(HttpResponseMessage))); provider.Use((o, l, m) => new AtomMediaTypeProcessor(o, m) .WithFormatter( (TheService.TimeZoneListModel tzms) => new SyndicationFeed("Time zones", "List of time zones", null, tzms.Zones.Select( tzm => new SyndicationItem(tzm.Id, tzm.Name, new Uri(tzm.Uri))))) ) .ForResponses.OfOperation( s => s.GetZones(default(HttpRequestMessage), default(HttpResponseMessage))); provider.Use((o,l,m) => new DataValidationProcessor(o)).ForRequests.OfAllOperations(); provider.Use((o,l,m) => new RequestLoggingProcessor(o)).ForRequests.OfAllOperations(); var config = new HttpHostConfiguration().SetProcessorProvider(provider); using(var host = new WebHttpServiceHost(typeof(TheService))) { var ep = host.AddServiceEndpoint(typeof(TheService), new HttpMessageBinding(){TransferMode = TransferMode.Streamed}, "http://localhost:8080/first/"); ep.Behaviors.Add(new HttpEndpointBehavior(config)); host.Open(); Console.WriteLine("host is opened at {0}, press any key to continue", ep.Address); Console.ReadLine(); } }
public static void Start() { var config = new HttpHostConfiguration(); config.SetProcessorProvider(new AsyncProcessorProvider()); using (var host = new WebHttpServiceHost(typeof(TheService), config, new Uri("Http://localhost:8080/twitter/"))) { host.Open(); Console.WriteLine("host is opened at {0}, press any key to continue", host.BaseAddresses[0]); Console.ReadLine(); } }