■ ServiceMetadataBehavior 클래스의 HttpGetEnabled 속성을 사용해 HTTP GET으로 WSDL을 제공하는 방법을 보여준다.
▶ 예제 코드 (C#)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
using System; using System.ServiceModel; using System.ServiceModel.Description; ServiceHost serviceHost = new ServiceHost(typeof(BookStoreService), new Uri("http://localhost/wcf/bookstoreservice")); serviceHost.AddServiceEndpoint(typeof(IBookStore), new BasicHttpBinding(), string.Empty); ServiceMetadataBehavior serviceMetadataBehavior = new ServiceMetadataBehavior(); serviceMetadataBehavior.HttpGetEnabled = true; serviceHost.Description.Behaviors.Add(serviceMetadataBehavior); serviceHost.Open(); Console.WriteLine("서비스 중단시 아무 키나 누르세요..."); Console.ReadKey(true); serviceHost.Close(); |
※ IBookStore 인터페이스는 서비스 계약이고 BookStoreService 클래스는 서비스 타입을 가정한다.