using System; using System.Linq; using System.ServiceModel; using System.ServiceModel.Activation; using System.ServiceModel.Web; using System.Collections.Generic; using System.Net; using System.IO; using System.Text; namespace DerbyNamesService { [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)] [ServiceContract] public class DerbyService { [WebGet] public IEnumerable PlayerNames() { var names = new DerbyContext().DerbyNames.Take(5).ToList(); return names; } [WebGet] public IEnumerable Leagues() { var leagues = new DerbyContext().Leagues.ToList(); return leagues; } [WebGet(UriTemplate="*")] public void ErrorForGet() { throw new WebFaultException(HttpStatusCode.NotFound); } [WebGet(UriTemplate="")] public Stream Root() { WebOperationContext.Current.OutgoingResponse.ContentType = "text/html"; string html = "Player Names
Leagues"; return new MemoryStream(Encoding.UTF8.GetBytes(html)); } } }